无法访问对象列表python的对象属性

时间:2018-03-22 11:01:11

标签: python-2.7

class A:

    def __init__(self):

        self._att_1 = "a"
        self._att_2 = "b"

    def set_1(self, ein):
        self._att_1 = ein

    def get_1(self):
        return self._att_1

    def set_2(self, zwei):
        self._att_2 = zwei

    def get_2(self):
        return self._att_2


class B:

    def __init__(self):
        self.liste = []         # stores A. Objects
        self._att_x = 1

    def set_elem(self, el):
        self.liste.append(el)

    def get_liste(self):
        return self.liste

    def set_Att(self, x):
        self._att_x

    def get_ATT(self):
        return self._att_x



def main():

    a = A()
    aa = A()
    aaa = A()

    b = B()
    b.set_elem(a)
    b.set_elem(aa)
    b.set_elem(aaa)

    for i in b.get_liste():
        print i  # <<<--------- Why i can`t access to the A() members ?? Like i.get_1() 

## --------------------------------------------------- output
<__main__.A instance at 0x7f2f6c3ff7e8>
<__main__.A instance at 0x7f2f6c3ff830>
<__main__.A instance at 0x7f2f6c3ff878>

----------------------------------------------- ---------

我试图查看存储在B()列表中的对象的成员属性。但我不能。对象在列表中(请参阅输出)。如何获取列表对象的属性或我可以访问它们?提前致谢

1 个答案:

答案 0 :(得分:0)

我无法重现这一点。将print i替换为print i.get_1()时,您的代码对我有用。因为它应该根据你所写的内容打印3个。