Esempio n. 1
0
##################################################################################

类 补遗

egg = Person('egon')  #类名()就等于在执行Person.__init__()


如何让通过实例修改类的静态变量,且这个变量是不可变对象
class Person:
    hair_color = 'white'

    def __init__(self, name):
        self.name = name

p1 = Person('ryan')
p1.hair_color = 'red'
print(p1.hair_color)

p2 = Person('oli')
print(p2.hair_color)
p2.__class__.hair_color = 'black'  # 实例名.__class__获取该实例所属的类
print(p2.hair_color)

p3 = Person('isaac')
print(p3.hair_color)



# 类的静态属性如果是可变对象,则当通过实例修改这个静态属性时,它会变化;如果是不可变对象,通过实例修改这个静态属性,相当于创建一个同名的类属性
# # 6.看代码写结果:
import os