我想将脚本的代码功能分成新模块。我想定义一些配置作为参数传递给该模块。然后,在模块中,我将此配置定义为全局。这是一个好习惯吗?有更好的解决方案吗?
主要脚本:
import myModule
config = {
"foo1" : "bar1",
"foo2" : "bar2",
"foo3" : "bar3"
}
myModule.execute(config)
模块:
def execute(config):
global CONFIG
CONFIG = config
value1, value2 = handleRequest()
print(value1)
print(value2)
def handleRequest()
value1 = doSomething(CONFIG["foo1"])
value2 = doSomethingElse(CONFIG["foo2"])
return value1, value2
答案 0 :(得分:5)
当我需要这种全局变量时,我通常会做的是创建一个类并在那里定义它们。例如,具有存储在其中的值的Configuration类。
这具有以下优点(不是结束列表):