类的方法的定义
1.def fun_name(self,...);
Pass
2.其中的参数self代表类的实例,在调用方法时由系统自动提供
3.方法定义时必须指明self参数
类的方法的调用
与普通的函数调用类似
1.类的内部调用:self.(参数列表)。
2.在类的外部调用:.(参数列表)。
注意:以上两种调用方法中,提供的参数列表中都不用包括self。
演示一个类:wash.py
class Washer:
def init(self):
self.water = 0
self.scour = 0
def add_water(self,water):
print('Add water:',water)
self.water = water
def add_scour(self,scour):
self.scour = scour
print('Add scour:',self.scour)
def start_wash(self):
print('Start wash...')
if name == 'main':
w = Washer()
w.add_water(10)
w.add_scour(2)
w.start_wash()
程序的运行结果为:
修改程序如图所示:washa.py
class Washer:
def init(self):
self.water = 10
self.scour = 2
def set_water(self,water):
self.water = water
def set_scour(self,scour):
self.scour = scour
def add_water(self):
print('Add water:',self.water)
def add_scour(self):
print('Add scour:',self.scour)
def start_wash(self):
self.add_water()
self.add_scour()
print('Start wash...')
if name == 'main':
w = Washer()
w.set_water(20)
w.set_scour(4)
w.start_wash()
程序的运行结果为:
类内方法相互调用
1.在一个类的内部方法之间是可以相应调用的
2.调用方法同上面所述的在类的内部调用方法
构造方法及其作用
1.构造方法就是前面课程提到和使用的_init_()方法。
2.构造方法的作用就是在类实例化时初始化实例。
3._init_()方法就是类实例化的第一步自动调用的函数。
4.注意其方法名是固定的,但其参数同普通方法一样,至少应带有self参数。
5.初始化实例包括:定义和初始化实例属性:或调用类的一些方法。
6.构造方法可以带有除self外的其它各种参数(关键字参数、默认参数、用元组收集参数、用字典收集关键字参数等);可以达到实例化类时,为相应的属性传入指定的值。
程序演示:washb.py
class Washer:
def init(self,water=10,scour=2):
self.water = water
self.scour = scour
def set_water(self,water):
self.water = water
def set_scour(self,scour):
self.scour = scour
def add_water(self):
print('Add water:',self.water)
def add_scour(self):
print('Add scour:',self.scour)
def start_wash(self):
self.add_water()
self.add_scour()
print('Start wash...')
if name == 'main':
# w = Washer()
# w.start_wash()
wb = Washer(100,10)
wb.set_water(50)
wb.set_scour(5)
wb.start_wash()
程序的运行结果为:
【相关推荐】