类属性:
#-------------类属性的增删改查------------ class People: country = 'China' def __init__(self,name): self.name=name def eat_food(self,food): print('%s正在吃%s'%(self.name,food)) def play_ball(self,ball): print('%s正在玩%s'%(self.name,ball)) def say_word(self,word): print('%s正在说%s'%(self.name,word)) # #查看类属性 print(People.country) #实例化一个对象 P1=People('dashu') P1.country P1.eat_food('粽子') P1.play_ball('lanqiu') #修改类属性 People.country='CHINA' print(People.country) #删除类属性 del People.country print(People.country)#报错 因为country属性已经被删掉 #增加类属性 People.country = 'china' People.count='100' print(People.count) def play_PC(self,game): print('%s正在玩%s'%(self.name,game)) People.PC=play_PC P1.PC('xxl')
实例属性:
# #--------------实例属性增删改查--------------- class People: country = 'China' def __init__(self,name): self.name=name def eat_food(self,food): print('%s正在吃%s'%(self.name,food)) p1 = People('guoguo') print(p1.__dict__) #查看实例属性 print(p1.name) p1.eat_food('粽子')#访问类 #增加数据属性 p1.age=18 print(p1.__dict__) print(p1.age) # #不要修改底层的属性结构: # p1.__dict__['sex']='female' # print(p1.__dict__) # print(p1.sex) #修改 p1.age=99 print(p1.__dict__) print(p1.age) #删除 del p1.age print(p1.__dict__)
# ----------------区分哪些是调用类实行和实例属性 哪些不是----------------- class People: country = 'Ch' def __init__(self,name): self.name=name def eat_food(self,food): print('%s正在吃%s'%(self.name,food)) p1=People('dashu') print(p1.country) p1.country='JP' print(People.country) print(p1.country) #报错 p1.age仅在类里面找country 找不到则报错 country = 'CA' class People: def __init__(self, name): self.name = name def eat_food(self, food): print('%s正在吃%s' % (self.name, food)) p1 = People('dashu')#初始化 调用__init__方法,__init__不能有return值 但是可以return None print(p1.country) country = 'CA' class People: def __init__(self, name): self.name = name print(country) def play_ball(self, ball): print('%s正在玩%s'%(self.name,ball)) p1=People('大树') # #CA -->通过点调用即为类属性或者实例属性 不是通过点调用的即与类属性实例属性无关,不会从类里面找 即找最外面的 country = 'CA' class People: country='JP' def __init__(self, name): self.name = name print(country) def play_ball(self, ball): print('%s正在玩%s'%(self.name,ball)) p1=People('大树') # ---------------------- class People: country = 'Ch' l=['a','b'] def __init__(self,name): self.name=name def eat_food(self,food): print('%s正在吃%s'%(self.name,food)) p1=People('大树') print(p1.l)#['a', 'b'] # p1.l=[1,2,3]#实例对象的l 不是类的l # print(People.l)#['a', 'b'] # print(p1.__dict__) p1.l.append('c') print(p1.__dict__) print(p1.l) print(People.l)