【发布时间】:2011-10-03 13:55:24
【问题描述】:
我有一个被多次实例化的类。它需要配置文件中的某个参数。我想在模块级别读取一次配置文件,以便每个实例都可以引用加载的参数。
我可能在收到邮件时遗漏了一些东西:UnboundLocalError: local variable 'the_parameter' referenced before assignment
代码大纲如下:
import ConfigParser
config = ConfigParser.ConfigParser()
config.read('config.cfg')
the_parameter = config.getint('my_section','the_parameter')
class MyClass():
def my_func(self):
print(the_parameter)
【问题讨论】:
-
@S.Lott - 我添加了缺失的“自我” - 谢谢
-
class MyClass():看起来不对。为什么要这样做?在 Python 2 中,使用class MyClass(object):。在 Python 3 中使用class MyClass: -
类定义中的括号不是必需的,除非您从另一个类继承,即。
class MyClass(object): ...。class MyClass: ...是可以接受的。 -
我意识到我正在尝试修改全局变量 - 我认为以下问题涵盖了这一点。我投票删除我的问题stackoverflow.com/questions/423379/…
-
把我们的我不能投票删除它,因为它有答案 - 我标记了它
标签: python module global-variables scope