Python常用魔术方法有哪些?Python可用魔术方法是什么

在之前的文章之中给大家介绍过了,python魔术方法是在某些操作执行时会去自动调用的方法,但是很多小伙伴都还不知道魔术方法有哪些 。所以这篇文章会来介绍一些常用的python魔术方法,感兴趣的话就和小编一起往下看看吧 。

Python常用魔术方法有哪些?Python可用魔术方法是什么

文章插图
一、init和new
python魔术方法有一个特点就是会在名称左右两边加上两个下划线 。这实际上是在表示该方法是类中的私有变量,不能够在类外部通过类对去调用,而类对象确实也点不出来魔术方法调用 。
【Python常用魔术方法有哪些?Python可用魔术方法是什么】那么init和new这两个魔术方法会在类实例化时调用,并且它们两个能够同时去调用,代码示例如下所示:
class Pig:    def __new__(cls,*arg,**kwargs):        return object.__new__(cls)    def __init__(self):        print("诞生")p=Pig()二、__del__
python之中存在于关键字del,它能够用来将一个对象从当前程序中彻底删除,内存空间和地址都会销毁掉 。而类中的魔术方法__del__也是会起到通用的作用,在类实例化完成,并且不再使用该对象时才会调用这个魔术方法,代码示例如下所示:
class Pig(object):    def __init__(self):        print("初始化")   def __del___(self):        print("del")     p=Pig()# 结果print("执行完成")初始化del执行完成三、__str__
这个魔术方法会在打印类对象时默认调用,因为类实例化对象之后是会在内存中开辟出空间并返回地址的 。而使用print()函数将类对象作为参数调用,那么输出的结果就会变成该对象在内存空间中的地址,代码示例如下所示:
class Dog:    def __init__(self,name):        self.name=named=Dog("小四")print(d)<__main__.Dog object at 0x000002650AFD3610>以上就是关于“Python常用魔术方法有哪些?Python可用魔术方法是什么”的全部内容了,希望对你有所帮助 。

    推荐阅读