python之类的特殊方法

本文详细介绍了Python类的一些特殊方法,包括__repr__、__del__、__dir__、__dict__、动态操作属性的方法、__call__、与序列相关的方法、实现迭代器和创建生成器等。这些方法在Python编程中扮演着重要角色,帮助我们更好地理解和控制对象的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、__repr__方法:
我的理解:如果定义一个class后里面没有__repr__方法直接print ( 类名 )将会打出一个16位的16进制的数字(按照尿性来看应该是存储的地址),如果里面有__repr__方法,那么此时print ( 类名 )会显示__repr__的返回值。(return什么显示什么)

2、del__方法:
与__init__方法对应的__del__函数,当系统将要回收某个类时,会自动叫用对象的__del
__()方法,且在del后无法再次使用该实例。

3、__dir__方法:
有两种使用方法:
①可以用dir(类名或者实例)的方法,该方法会按照字母排序的方式返回一个该object的所有方法(反正自己定义的属性排在前面)
②或者实例.dir( ),返回值如上(注意,__dir__并不是类方法所以无法直接利用 类.dir() )

4、__dict__方法:
该方法可以返回该属性对应的所有的属性名和其所对应的属性的内容(以字典的形式),同时也可以在后面加上[“某属性”]可以单单进行操作(查看删除修改)

5、当程序操作对象属性时有关的方法:
getattribute( self,item ):当程序访问对象的name属性时会被调用。
getattr( self, name ):当程序访问对象的name属性且该属性不存在时被自动调用。
setattr

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值