Python 对象初始化属性在下游类中不可访问
当这些对象被传递到新类中时,我在访问对象属性方面遇到了问题 例如:Python 对象初始化属性在下游类中不可访问,python,class,Python,Class,当这些对象被传递到新类中时,我在访问对象属性方面遇到了问题 例如: class foo: def __init__(self, x): self.x = x class bar: def __init__(self, foo: foo, y): self.foo = foo, self.y = y class why: def __init__
class foo:
def __init__(self, x):
self.x = x
class bar:
def __init__(self, foo: foo, y):
self.foo = foo,
self.y = y
class why:
def __init__(self, bar: bar, z):
self.bar = bar
self.z = z
a = foo(1)
b = bar(a, 2)
c = why(b, 3)
当我试图访问b.foo.x
时,我得到一个AttributeError:“tuple”对象没有属性“x”
但是当我尝试访问c.bar.y
时,我成功地返回了2
。为什么我可以从Why
类访问bar
类的y
属性,但我不能从bar
类访问foo
类的x
属性
我有一系列的自定义对象,它们被传递到自定义类中-实现这一点的合适方法是什么
还有一种奇怪的情况,当我运行。\uuuu dict\uuuuu.keys()
时,我看到了
的所有方法,但没有看到在\uuuu init\uuuu>阶段分配的属性
提前谢谢 您有一个简单的输入错误-self.foo=foo,
结尾的注释使self.foo
成为一个元组。去掉逗号,它就会起作用