gpt4 book ai didi

python - 在Python中访问类中的类成员的最佳方法

转载 作者:太空宇宙 更新时间:2023-11-03 14:11:19 24 4
gpt4 key购买 nike

我想知道访问类中的类变量的最佳方式是通过自身,还是通过类名

我在某处读到 self 仅用于访问实例变量。但是当我尝试使用下面的代码时,它是相同的事情之一。这是否意味着我们可以使用它们中的任何一个?

class MyClass:
cls_var = 0 # class variable

def increment(self, incre):
self.cls_var += incre
MyClass.cls_var += incre

def print_var(self):
print(self.cls_var) #Choice 1
print(MyClass.cls_var) # Choice 2


obj1 = MyClass()
obj2 = MyClass()

obj1.increment(5)
obj2.increment(10)

obj1.print_var() #prints 5, 15
obj2.print_var() # prints 15, 15

最佳答案

您应该仅通过类名访问类变量,因为该变量在所有类之间共享。因此,为了避免混淆,应该只通过类的名称访问类变量;否则可能会导致surprising errors (参见第二个片段)。

关于python - 在Python中访问类中的类成员的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48476145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com