当我传递程序中的选项(计算生物学实验)时,我通常通过 .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写下一个函数的代码,因为它写下一个变量的值?