class People:
num1=111
num2=222
def __init__(self,num1):
self.num1=num1
print ("People " + " 被创建")
def __del__(self):
print ("People " + " 被析构")
if __name__=="__main__":
obj1=People(333)
print (obj1.num1) #对象的num1是333
print (obj1.num2) #对象的num2没有赋值就是类的num2
print (People.num1) #类的num1仍然是111
print (People.num2) #类的num2 222
People.num2=123456 #这样才能改变类变量num2
print (People.num2)
obj1=5 #左边是引用 右边是对象 引用为零的对象就被回收
print ("-----------------")
理解
写在类刚开始的变量是属于这个类的变量,而 self.name取到的或者设置的是对象的变量,但是当对象没有某变量而类有那个变量时:self.name取到的是类变量

本文深入探讨了Python中类变量与对象变量的区别及作用域。解释了如何在类定义中初始化变量,以及self.name如何引用对象变量。同时,阐述了对象变量未定义时,self.name将访问类变量的机制。
1802

被折叠的 条评论
为什么被折叠?



