从不同文件的类中访问变量

时间:2014-09-05 17:16:38

标签: python class

我有两个文件a.py和b.py. 在b.py中,类定义如下:

class ii(ldata) ..... 
      self.mn()

      def mn(self) .... 
          return t1,t2

我想在a.py中使用t1t2的值 在文件a.py中我导入了b

from b import ii 
t1,t2=ii()

但是我收到了一个错误。 class ii has no attribute 't1'

有人可以告诉我如何在a.py

中访问值t1t2

2 个答案:

答案 0 :(得分:0)

从您的问题中不清楚t1t2的定义。但是,使用

导入b
import b

a.py有三种方式t1可以看到t2(和b.t1类比):

  1. t1 - 如果b.py被定义为模块级全局,则它直接存在于b.ii.t1的全局命名空间中。

  2. t1 - 如果在ii内的班级定义了inst = b.ii(); inst.t1,则它是一个类变量。

  3. t1 - b.ii被定义为类t1的实例的实例变量

  4. 否则,b.py似乎是{{1}}中定义的某个函数或方法的局部变量,并且在该范围之外不可见。

答案 1 :(得分:0)

您必须从类mn调用函数ii才能设置变量t1 and t2。所以你必须做类似的事情:

import b
ii iclass
t1,t2 = iclass.mn()

希望这会给你一些想法。