gpt4 book ai didi

python - 你如何让 Python 写下它在内存中的函数代码?

转载 作者:太空狗 更新时间:2023-10-30 00:27:13 25 4
gpt4 key购买 nike

当我在程序(计算生物学实验)中传递选项时,我通常通过 .py 文件传递​​它们。
所以我有这个 .py 文件,内容如下:

starting_length=9
starting_cell_size=1000
LengthofExperiments=5000000

然后我执行文件并获取数据。由于该程序都在我的机器上,没有其他人可以访问它,所以它以一种微不足道的方式是安全的。
我也可以很容易地写一个类似的文件:

def writeoptions(directory):
options=""
options+="starting_length=%s%s"%(starting_length,os.linesep)
options+="starting_cell_size=%s%s"%(starting_cell_size,os.linesep)
options+="LengthofExperiments=%s%s"%(LengthofExperiments,os.linesep)
...
open("%s%soptions.py"%(directory,os.sep),'w').write(options)

我想传递一个函数作为参数之一:

starting_length=9
starting_cell_size=1000
LengthofExperiments=5000000

def pippo(a,b):
return a+b
functionoperator=pippo

当然,在实际实验中,函数 pippo 会复杂得多。并且每个实验都不同。

但我无法做的是自动编写函数。简而言之,如果其中一个选项是函数,我不知道如何概括 writeoptions 函数以继续编写选项。我当然可以复制原始文件,但这样做不够优雅,效率低下(因为它包含许多未使用的额外选项),并且通常不能解决问题。

如何让 python 写下函数的代码,就像它写下变量的值一样?

最佳答案

vinko@mithril$ more a.pydef foo(a):  print avinko@mithril$ more b.pyimport aimport inspecta.foo(89)print inspect.getsource(a.foo)vinko@mithril$ python b.py89def foo(a):  print a

关于python - 你如何让 Python 写下它在内存中的函数代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/399991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com