自动执行脚本中的所有功能的最佳做法是什么?以此脚本为例:
def a():
return 1
def b():
return 100
def c():
return 1000
运行脚本后,如何在不执行以下操作的情况下执行所有这些功能:
>>>a()
1
>>>b()
100
>>>c()
1000
答案 0 :(得分:4)
您可以在全局变量中找到所有函数对象:
from inspect import isfunction
for obj in globals().values():
if isfunction(obj) and obj.__module__ == __name__:
print obj()
通过测试__module__
属性,您可以过滤掉任何导入的函数对象(例如inspect.isfunction()
函数)。这假设您的所有函数都没有参数。