来自亚涅夫·阿基宁关于Python内部:对象102的帖子。有这样一种说法。
获取类型上的属性直接连接到类型实例的私有字典的字典分配,该类型实例的私有字典由该类型的结构所指向。
我很难理解这意味着什么。
在文章中,它使用了术语type over class。所以我把它读为class也有一个类型,它是type,type有槽来使用类的dict来检索和设置属性。但是为什么获取属性被连接到字典赋值呢?这不应该是设定的操作吗?
发布于 2020-06-23 04:23:27
如果您还没有使用过一个示例,这可能会有所帮助。python中的对象有一个特殊的属性dict,即“支持任意函数属性的命名空间”文档。
class Person:
def __init__(self):
# self here is person
# set its attributes age and name
self.age = 21
self.name = "Bob"
# person object is of type Person
person = Person()
print( person.__dict__ )
# {'age': 21, 'name': 'Bob'}
# Add a new variable to person object namespace
person.new_var = "a_new_value"
print( person.__dict__ )
# {'age': 21, 'name': 'Bob', 'new_var': 'a_new_value'}注意,Person对象有字典dict,它包含其属性的键值对。
https://stackoverflow.com/questions/62527079
复制相似问题