我已经学习 Python 大约一周左右,在我的代码变得相当大而且有点混乱之后,我决定将它分解成单独的类文件等,但我遇到了一些问题。
我已经尝试过谷歌搜索并在这里搜索,但我找不到我的具体问题,如果之前有人问过,请原谅我。
考虑2个文件。test.py 和 testClass.py 我在 test.py 中有一个全局变量,它也将在 test.py 中设置,但我想在 testClass.py 的函数中访问该变量。这里有一些代码可以帮助解释。
test.py 看起来像这样:
import testClass
dict = {}
z = 5
dict['test'] = testClass.testClass(1, 3)
print dict['test'].sum()
testClass.py 看起来像这样:
class testClass:
def __init__(self, x, y):
self.foo = x
self.bar = y
def sum(self):
global z
return self.foo + self.bar + z
目前,口译员正在吐槽:
NameError: global name 'z' is not defined
在重新阅读了类和变量范围的 Python 引用后,我认为我已经掌握了它,但显然没有。
这一切的结果只是能够遍历对象实例的字典并运行包含在外部类中的一系列各种检查函数等。