在之前的文章之中给大家介绍过了,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可用魔术方法是什么”的全部内容了,希望对你有所帮助 。
推荐阅读
- Python魔术方法和魔法方法有什么区别?Python魔法和方法共同点在哪
- Python魔术方法是什么?Python魔术方法以及原理详解
- Python抽象类有什么用?Python抽象类和普通类区别是什么
- Python中基类是什么意思?Python基类和派生类关系是什么
- Python元类的概念是什么?Python中元类的作用是什么
- Python中xlwings库的功能是什么?Python中xlwings库的使用方法
- 怎么在Python中使用getopt函数?Python中getopt函数的用法详解
- Python中的sys.argv是什么?详解Python中sys.argv使用方法
- Python中自动化办公的库有哪些?Python自动化办公库的特点
- Python如何使用openpyxl模块操作excel?使用openpyxl模块操作excel表格的方法