在Python中,对象是否可以有另一个对象作为属性?例如,可以称为汽车的汽车类有一个名为轮胎作为属性的类?在Python中,对象是否可以有另一个对象作为属性?
1
A
回答
2
您的意思是类tire
或类tire
的实例吗?虽然后者可能更有用,它可以有两种。如果你正在寻找一个对象Mary
类的到已经-A型对象Fred
你想要的classinst
多种分配:
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56)
>>> class Fred(object): pass
...
>>> class Mary(object):
... def __init__(self):
... self.classref = Fred
... self.classinst = Fred()
...
>>> x = Mary()
>>> dir(x)
[... 'classinst', 'classref']
>>> x.classref
<class '__main__.Fred'>
>>> x.classinst
<__main__.Fred object at 0xb76eed0c>
0
把握;类,就像任何其他的值,可以是类或实例属性:
class A(object):
pass
class B(object):
class_attr = A
def __init__(self):
self.instance_attr = A
有了这个代码,你可以使用B.class_attr
或B().instance_attr
访问A
。
0
是的。
>>> class tire:
... pass
...
>>> class car:
... def __init__(self, tire):
... self.tire = tire
...
>>> t = tire()
>>> t.brand = 'Goodyear'
>>> c = car(t)
>>> c.tire.brand
'Goodyear'
0
您可以将实例和类都作为类和实例的属性 - 所有四个组合都可以正常工作(并且可以自由组合)。但是,请记住类别和实例之间的区别 - 您对问题进行短语说明的方式表明存在一些混淆。无论如何,从字面上看你的问题:
可以称为汽车类有一个类 称为轮胎作为属性?
class tire(object):
...class body here...
class car(object):
thetire = tire
...rest of class body here...
一个tire = tire
分配中的car
身上是行不通的(命名混乱 - !),所以你需要比这就是它的价值类不同命名类属性。 (这并不适用于例如属性,因为它们的语法,例如self.tire
,是的合格名,而不是barenames,所以没有命名混乱 - 只类属性)。这是否是导致你提出这个问题的问题的来源?
相关问题
- 1. 是否有一种方法可以将HttpServletRequest对象作为属性传递给另一个HttpServletRequest对象
- 2. 在另一个对象设置对象作为新属性
- 3. 属性对象是否可以到达它属于的对象?
- 4. PJRC编码器对象作为另一个对象的属性
- 5. 是否可以确定一个对象是否被另一个对象引用?
- 6. 是否可以在javascript中将对象的属性值设置为对象?
- 7. python访问另一个对象内的对象属性
- 8. 是否有可能推对象为在现有对象的属性
- 9. 将php对象的属性存储在另一个对象中作为参考
- 10. WMI对象与另一个对象作为属性(如何通过一个对象作为输入参数)
- 11. 我可以知道AppleScript对象是否具有某个属性?
- 12. 将对象属性初始化为DataGridView中另一个对象属性的值
- 13. 在另一个对象中设置类似的对象属性
- 14. ConfigurationElementCollection对象是否可以为其元素包含另一个ConfigurationElementCollection对象?
- 15. 是否可以从同一个原型对象中的另一个属性创建一个属性?
- 16. C#是否可以将称为方法的对象另存为另一个对象作为参考节点
- 17. 访问对象是另一个对象的属性 - 使用Javascript
- 18. 遍历对象的值,这是另一个对象的属性
- 19. 分配对象属性为另一个对象
- 20. 在另一个属性中访问一个对象属性
- 21. dojo.dnd.Source对象是否可以包含另一个dojo.dnd.Source对象作为其中一个子节点?
- 22. 是否可以在同一个对象内引用对象?
- 23. Qt对象中是否有属性,用作默认值属性?
- 24. 从另一个对象分配一个对象属性
- 25. python对象可以嵌套属性吗?
- 26. 拉属性对象作为父对象
- 27. Android sqllite,查询属于另一个对象属性的对象
- 28. 为什么不能将一个对象的属性值用作另一个对象中的属性名称?
- 29. WCF:Request对象中另一个对象类型的一个属性变为NULL
- 30. 是否可以获取对象的属性和关联属性?
这是您可以拥有的唯一属性。 – nosklo 2010-05-25 11:21:39