
版权声明:本文为博主原创文章,未经博主允许不得转载。
其实,从名字就能看出来,python的类变量和实例变量的区别:
类变量:
是可在类的所有实例之间共享的值(也就是说,它们不是单独分配给每个实例的)。例如下例中,num_of_instance 就是类变量,用于跟踪存在着多少个Test 的实例。
实例变量:
实例化之后,每个实例单独拥有的变量。
- class Test(object):
- num_of_instance = 0
- def __init__(self, name):
- self.name = name
- Test.num_of_instance += 1
- if __name__ == '__main__':
- print Test.num_of_instance
- t1 = Test('jack')
- print Test.num_of_instance
- t2 = Test('lucy')
- print t1.name , t1.num_of_instance
- print t2.name , t2.num_of_instance
结果如下:
>>>
0
1
jack 2
lucy 2
>>>