Python 在方法内部使用self.classvariable和class.classvariable有什么区别?
两者产生相同的结果?Python 在方法内部使用self.classvariable和class.classvariable有什么区别?,python,class,oop,variables,self,Python,Class,Oop,Variables,Self,两者产生相同的结果? 两者的用例是什么?类变量将对所有从该类创建实例的人可用,就像类中方法的定义一样,而实例变量将仅对该实例可用 举个例子: class demo(): c_v=[] def __init__(self): demo.c_v.append('one') class demo(): c_v=[] def __init__(self): self.c_v.append('one') 将为您提供以下输出: class Exampl
两者的用例是什么?类变量将对所有从该类创建实例的人可用,就像类中方法的定义一样,而实例变量将仅对该实例可用 举个例子:
class demo():
c_v=[]
def __init__(self):
demo.c_v.append('one')
class demo():
c_v=[]
def __init__(self):
self.c_v.append('one')
将为您提供以下输出:
class Example:
class_i = [1]
def __init__(self):
self.instance_i = [1]
a = Example()
b = Example()
a.class_i.append(2)
b.class_i.append(3)
a.instance_i.append(40)
b.instance_i.append(50)
print a.class_i
print b.class_i
print a.instance_i
print b.instance_i
我想我的问题是不同的我在课堂上,而解释在课堂之外class@ShashiTunga同样的解释适用于这两种情况。
[1,2,3]
[1,2,3]
[1,40]
[1,50]