我希望能够做到这一点:
>>> obj = Example('hi', 'hello')
>>> obj.a
'hi'
>>> obj.sub_obj.b
'hello'
我尝试这个但我得到AttributeError: 'dict' object has no attribute 'b'
:
class Example:
def __init__(self, a, b):
self.a = a
self.sub_obj = {}
self.sub_obj.b = b
我看到一个类似的问题,但我不太明白:Can pythonobjectshavenestedproperties? 。我只希望输出 JSON 具有嵌套对象。API 要求我这样做。
该属性是一个字典,因此可以使用语法以正常方式为其键分配
[]
。通过文字语法创建的对象将继续是普通类型,并且不会具有新的方法/属性。