0

假设我有以下配置文件:

配置文件

x = 2
y = x * 2

我想将其导入文件main.py,最好使用 load_source 命令,但我也希望能够在导入时更改 x 的值,以便 x 的更改传播到配置中的其他变量.py。例如,我想要下面的代码,打印 6 而不是 4。

主.py

import imp
config = imp.load_source('', 'config.py')
config.x = 3
print config.y

最好的方法是什么?我知道我可以在config.py中编写函数来为我执行此操作,但我更喜欢配置仅是简单的变量定义。

4

1 回答 1

1

将代码放入一个类中:

class Config(object):
    def __init__(self, x=2):
        self.x = x
        self.y = x * 2

然后,在您的主程序中:

c = Config(3)
print c.y
于 2016-02-25T22:35:04.440 回答