python魔法方法有哪几种?

美女程序员鼓励师

1、__new__(cls[,...])

__new__是对象实例化过程中第一个被调用的方法。它构造了对象实例,然后将其他参数传递过__init__。__new__用的相当少,但它还是有它的用处,尤其是当子类化一个不可变的类型如tuple和str。对于__new__不作过多细节探讨,相关细节可以查看Python文档。

2、__init__(self[,...])

类的初始化方法,无论使用什么主构造函数都会通过。

3、__del__(self)

如果说__new__和__init__构成了对象的构造器,那么__del__就是对象的析构器。它没有实现语句del x的行为(因此,不能转换成x.__del__())。相反,它定义了一个对象被垃圾回收时的行为。它对在对象被清理前需要其他额外的清理工作时十分有用,例如sockets对象或文件对象。但是请小心,因为不能保证对象仍然存在而解释器退出前__del__的执行,因此__del__不能替代良好的编码做法(例如在完成操作后始终关闭连接)。事实上,__del__应该从不被使用,因为它在不稳定的情况下被调用。我们应该谨慎使用它。

以上就是python的3种魔法方法,希望能对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

以上是 python魔法方法有哪几种? 的全部内容, 来源链接: utcz.com/z/543688.html

回到顶部