我的应用程序中有很多常量变量。在这个应用程序中,我导入了一个模块。作为测试的一部分,我想从所述导入模块中的函数调用,该函数打印出变量的名称及其值。
好的,所以这不是我的代码,但这显示了我想做的概念:
-main.py-
import mymodule
DEBUG = True
BATCH = False
ShowVars(['DEBUG','BATCH'])
-mymodule.py-
def ShowVars(varlist):
for name in varlist:
print('{} -> {}').format(name,eval(name))
当然,我在 eval(name) 处遇到错误,即“未定义调试”,但我正试图让这个概念发挥作用。
我发现的一种方法是将 main.py 更改为:
-main.py-
import mymodule
DEBUG = True
BATCH = False
mymodule.DEBUG=DEBUG
mymodule.BATCH=BATCH
ShowVars(['DEBUG','BATCH'])
然后一切正常,但我不确定我是否喜欢它......任何想法或轶事将不胜感激。