猫史档案馆


急,求助,关于类

用户:1111111111111111211111111111111112查看:10 回复:4 评论:10 创建时间:2023-05-14T19:20:59


class person:
__slots__ = ("name")
def __init__(self):
self.name=12
shili = person()

print(shili.name)
person.name=1090
print(shili.name)
print(person.__dict__) 为什么修改类属性会影响实例属性?(缩进被吞)


回复

上一页1 页 / 共 1下一页
SCS_user_LoeheodVOQSCS_user_LoeheodVOQ

因为你定义了__slots__,所以类自动添加了类属性name,修改name就会影响到实例属性,没有__slots__就不会了

点赞0


评论


SCS_user_LoeheodVOQSCS_user_LoeheodVOQ

class A:
    x = 1

a = A()

a.x // 1
A.x // 1

A.x = 2

A.x // 2
a.x // 2

点赞0


评论


𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟

原实例类继承原型类

当实例类属性未设置值

则调用原型类的属性

所以修改原型类会影响到实例(补充)

点赞0


评论


𝙲ℴ𝗌𝔦𝒹ₑ𝑟𝙲ℴ𝗌𝔦𝒹ₑ𝑟

center_image

点赞0


评论