2024-05-20 00:55:20 发布
网友
我想区分我第一次初始化一个类和其他所有初始化它的时间。我已经创建了一个实例属性并将其值设置为True。如何使所有后续实例的属性值都为False?你知道吗
class Cool(Dude): def __init__(self): self.coolnesscheck = True
可以使用class属性来指示是否创建了第一个对象。示例-
class Cool: __firstinit = True def __init__(self): self.coolnesscheck = Cool.__firstinit Cool.__firstinit = False
我在名称前面加了__来引入Name Mangling,这样属性就不容易在类外访问了。你知道吗
__
使用class属性,并在实例化该类的对象时将其设置为False:
False
>>> class Cool: ... coolnesscheck = True ... def __init__(self): ... self.coolnesscheck = Cool.coolnesscheck ... Cool.coolnesscheck = False ... >>> Cool.coolnesscheck True >>> a = Cool() >>> Cool.coolnesscheck False >>> a.coolnesscheck True >>> b = Cool() >>> Cool.coolnesscheck False >>> b.coolnesscheck False
可以使用class属性来指示是否创建了第一个对象。示例-
我在名称前面加了
__
来引入Name Mangling,这样属性就不容易在类外访问了。你知道吗使用class属性,并在实例化该类的对象时将其设置为
False
:相关问题 更多 >
编程相关推荐