我在同一个模块中定义了两个类,并希望在第一个中使用第二个(作为全局变量):
class Class1(object):
global_c2 = Class2()
def foo(self):
local_c2 = Class2()
class Class2(object):
pass
global_c2 出现错误,但 local_c2 没有。这是有道理的,因为当编译器查看这个文件时,它不会知道 Class2 将会存在。此外,如果我切换类以便首先定义 Class2 它可以工作。
但是我想知道是否有另一种方法可以解决这个问题。也许我可以以某种方式告诉 python Class2 将会存在,所以不用担心,或者我只需要将它们按正确的顺序排列?