我目前正在开展一个项目,我需要将几个文件中的几个类导入__main__.py
。但是这些类需要相互交互(例如,文件1中的类A可能必须从文件2中检查类B中的变量)。我尝试这样做:
class A(object)
(code here)
if B.var == 1:
pass
但是这会导致错误(B未定义)。有谁知道解决这个问题?
答案 0 :(得分:0)
首先,您需要使用完全限定名称来呼叫B
。如果你import package
和package
中有B
个类,那么你必须检查package.B.var == 1
。您也可以执行from package import B
,在这种情况下,您可以执行B.var == 1
。
其次,如果var
是属性而不是静态类变量,则需要创建对象。将这两者放在一起,您将得到如下内容:
import package
b_instance = package.B()
print(b_instance.var)