通过导入的类访问类

时间:2017-02-26 20:52:57

标签: python python-3.x

我目前正在开展一个项目,我需要将几个文件中的几个类导入__main__.py。但是这些类需要相互交互(例如,文件1中的类A可能必须从文件2中检查类B中的变量)。我尝试这样做:

class A(object)
  (code here)
  if B.var == 1:
    pass

但是这会导致错误(B未定义)。有谁知道解决这个问题?

1 个答案:

答案 0 :(得分:0)

首先,您需要使用完全限定名称来呼叫B。如果你import packagepackage中有B个类,那么你必须检查package.B.var == 1。您也可以执行from package import B,在这种情况下,您可以执行B.var == 1

其次,如果var是属性而不是静态类变量,则需要创建对象。将这两者放在一起,您将得到如下内容:

import package
b_instance = package.B()
print(b_instance.var)