Python的魔法方法

 时间:2024-10-15 09:51:35

1、首先要介绍的是最基本的魔法方法,构造方法__init__(),我们可以使用它来初始化对象。如下图所示,我们定义了一个类,使用__init__()进行初始化,那么我们在创建对象时就为属性进行了赋值,进而可以进行其他操作。

Python的魔法方法

2、当我们在创建类的时候__init__()敛财醣沁并不是最先被调用的方法,最先被调用的是__new__(),这个方法是用于创建实例的。该方法仅读取cls参数,并把其他参数传递给用于实例蔌阪栉酽初始化的__init__()方法。例如,字符串是一个不可改变的类型,我们可以通过重写__new__()方法,完成字符串全部变大写的操作。

Python的魔法方法

3、__del__()方法用于销毁对象,定义对象被垃圾回收的行为,我们在使用del删除python对象时,__del__()方法会被调用。

Python的魔法方法

4、还有python操作符相关的魔法方法,例如__eq__()比较操作符,等于==的行为,__add__(self)加法操作的行为,操作符的魔法方法很多,就不一一介绍了,大家可以自行学习。我们一般不会去改变这些操作符魔法方法,除非是真的有需要。例如我们可以重新定义加法的行为,使之变为减法。

Python的魔法方法

5、python中我们可以使用字符串表示类,例如__str__(self)定义了类的实例调用str()的行为,__repr__(self)定义了类的实例调用repr() 的行为。这两者的区别是str()面向的是人,而repr()面向的是机器,定义类的输出时经常会用到这两个方法。

Python的魔法方法
  • VMware使用之:[1]动态扩展硬盘不增长了?
  • winnfsd如何建立WindowsNFSserver打开对应端口
  • 【软件】Unity3D脚本获得另一个物体的组件
  • Windows 10如何设置放大镜缩放比例
  • 暗黑血统2 终极版 攻略
  • 热门搜索
    数学手抄报内容六年级 关于知识的手抄报 有关交通安全的手抄报 食品药品安全手抄报 讲文明手抄报内容 语文手抄报内容大全 呵护心灵手抄报内容 关于黄河的手抄报初一 自我介绍手抄报图片 有关于元宵节的手抄报