class Student(object): count=0 def __init__(self,name): self.name=name Student.count=Student.count+1 # 测试: if Student.count != 0: print('测试失败!') else: bart = Student('Bart') if Student.count != 1: print('测试失败!') else: lisa = Student('Bart') if Student.count != 2: print('测试失败!') else: print('Students:', Student.count) print('测试成功!')
大佬能否解释一下,在创建实例的过程中为何类属性count不重新赋值0?count=0不是写在第一行吗?
因为count这个变量是属于这个类的,而不是属于某个实例,所有实例共享这个类count变量。
跟全局变量一个道理
Sign in to make a reply
做回自己ZXH