在python中,_XX_()的函数叫做魔法方法,指的是具有特殊功能的函数。
1、_init_()
1.1 体验_init_()
作用:初始化对象
# 目标:定义init魔法方法设置初始化属性,并访问调用 """ 1. 定义类 init魔法方法:width 和 height 添加实例方法:访问实例属性 2. 创建对象 3. 验证成果 调用实例方法 """ class washer(): # 定义初始化功能的函数 def __init__(self): # 添加实例属性 self.width = 500 self.height = 800 def print_info(self): # 类里面调用实例属性 print(f'洗衣机宽度是:{self.width}') print(f'洗衣机高度是:{self.height}') # 创建对象 haier = washer() haier.print_info()
注意:
1. _init_()方法,在创建一个对象时默认被调用,不需要手动调用。
2. _init_(self)中的self参数,不需要开发者传递,python解释器会自动把当前的对象引用传递过去。
1.2 带参数的_init_()
# 1. 定义类:带参数的init:宽度和高度; 实例方法:调用实例属性 class washer(): def __init__(self, width, height): self.width = width self.height = height def print_info(self): print(f'洗衣机宽度是:{self.width}, 洗衣机高度是:{self.height}') # 2. 创建属性,创建多个对象且属性值不同;调用实例方法 haier1 = washer(10, 20) haier1.print_info() haier2 = washer(100, 200) haier2.print_info()
2、_str_()
当使用print输出对象的时候,默认打印对象的内存地址。如果定义了str方法,那么就会打印从在这个方法中的return的数据。
class washer(): def __init__(self): self.whdth = 300 def __str__(self): return '解释说明:类的说明或对象状态的说明' haier = washer() # 解释说明:类的说明或对象状态的说明 print(haier)
3、_del_()
当删除对象时,python解释器也会默认调用del方法。
class washer(): def __init__(self): self.whdth = 300 def __del__(self): print('对象已经删除') haier = washer() # 这行有没有都可以,因为代码往下运行时已经默认运行了删除对象操作 del haier
标签:__,特殊,函数,self,魔法,init,print,washer,def From: https://www.cnblogs.com/yz-b/p/16909941.html