python学习笔记:类与类的实例
一.class Human(object):
Age = 0
Name = ["li", "Lei"]
a = Human()
b = Human()
a.Age += 1
print a.Age
print b.Age
a.Name[0] = "Wang"
print a.Name
print b.Name
执行结果:
xiaoheng@ubuntuxh:~/Program/mypython/class$ ./class2.py
1
0
['Wang', 'Lei']
['Wang', 'Lei']
程序里面a.Age是类属性,因此Name输出结果一样,但是由于Age是mutable类型,因此会产生一个副本,所以结果不一样
二.class Human(object):
Age = 0
Name = ["li", "Lei"]
a = Human()
b = Human()
Human.Age += 1
print a.Age
print b.Age
a.Name[0] = "Wang"
print a.Name
print b.Name
执行结果:
xiaoheng@ubuntuxh:~/Program/mypython/class$ ./class2.py
1
1
['Wang', 'Lei']
['Wang', 'Lei']
程序与上面的不用之处在于Human代替了a.Age,但是Name的结果一样,只是Age的结果与上面结果不一样,Age没有产生副本