1.直接修改属性的值
class Lei:
def init(self,xc1,xc2):
self.a=xc1
self.b=xc2
self.c=0 #给属性指定默认值
def fangfa1(self):
print(f"hello {self.a}.")
def fangfa2(self):
print(f"HELLO {self.b}")
def fangfa3(self):
print("the age is "+str(self.c)+".")
name1=Lei(‘san’,‘zhang’)
name1.fangfa1()
name1.fangfa2()
name1.c=23#直接修改属性的值,此处容易出错
name1.fangfa3()
2.通过增加方法修改属性的值
class Lei:
def init(self,xc1,xc2):
self.a=xc1
self.b=xc2
self.c=0
def fangfa1(self):
print("hello "+self.a)
def fangfa2(self):
print("HELLO "+self.b)
def fangfa3(self):
print("the age is "+str(self.c)+'.')
def fangfa4(self,age):
#增加一个方法,接受2个形参self和age,然后将age储存的值传递给变量self.c
#调用时先使用方法4,改变age,再使用方法3打印age
self.c=age
name1=Lei(‘zhang’,‘san’)
name1.fangfa1()
name1.fangfa2()
name1.fangfa4(19)
name1.fangfa3()
禁止回调
class Lei:
def init(self,xc1,xc2):
self.a=xc1
self.b=xc2
self.c=3
def fangfa1(self):
print("hello "+self.a)
def fangfa2(self):
print("HELLO "+self.b)
def fangfa3(self):
print("the age is "+str(self.c)+'.')
def fangfa4(self,age):
if age>self.c:
self.c=age
else:
print('the age is getting bigger.')
self.c=age
name1=Lei(‘zhang’,‘san’)
name1.fangfa1()
name1.fangfa2()
name1.fangfa4(19)
name1.fangfa3()