网站建设违约合同,wordpress后台添加新的文章类别,杭州工程建设网,如何给网站添加外链Python类的常用特殊方法 1、__str__2、__repr__3、attr方法4、attr内置方法5、__init__6、__new__7、__call__8、内置方法与对应操作 1、str __str__方法用于str()函数转换中#xff0c;默认使用print()方法打印一个对象时#xff0c;就是对它的调用#xff0c;我们可以重写… Python类的常用特殊方法 1、__str__2、__repr__3、attr方法4、attr内置方法5、__init__6、__new__7、__call__8、内置方法与对应操作 1、str __str__方法用于str()函数转换中默认使用print()方法打印一个对象时就是对它的调用我们可以重写这个函数还实现自定义类向字符串的转换
2、repr repr()函数调用对象中的__repr__()方法返回一个Python表达式通常可以在eval()中运行它
3、attr方法 Python在object基类中提供了3个与属性操作相关的方法
__delattr__用于del语句删除类或者对象的某个属性__setattr__用于动态绑定属性__getattribute__在获取类属性时调用无论属性是否存在
4、attr内置方法 Python提供了三个内置属性方法getattr()、setattr()和hasattr()分别用于获取、设置和判定对象的属性
既然我们已经可以通过对象名直接访问它们为何还要使用这些函数呢通过它们我们可以对任意一个我们不熟悉的对象进行尝试性访问而不会导致程序出错
getattr()方法最大的用途在于如果对象没有相应属性可以不报错AttributeError可以为它指定一个默认值
5、init 类的构造方法
6、new 控制创建类的实例
7、call __call__具有非常特殊的功能可以将一个对象名函数化。实现了__call__()函数的类其实例就是可调用的Callable。可以像使用一个函数一样调用它
装饰器类就是基于__call__()方法来实现的。__call__()只能通过位置参数来传递可变参数不支持关键字参数除非函数明确定义形参
可以使用callable()方法来判断一个对象是否可被调用也即对象能否使用()括号的方法调用
参考文档https://pythonhowto.readthedocs.io/zh-cn/latest/object.html#id15
8、内置方法与对应操作 包含算术运算、比较运算、赋值运算、位运算、逻辑运算、成员运算、身份运算、其他
参考文档https://pythonhowto.readthedocs.io/zh-cn/latest/object.html#id19