Python 中有很多魔法方法,它们以双下划线 __
开头和结尾,用于实现类的特殊行为。以下是一些常用的魔法方法:
1. __init__(self, ...)
初始化方法,用于创建对象并设置初始状态。
2. __str__(self)
返回对象的非正式字符串表示形式,通过 str()
函数调用。
3. __repr__(self)
返回对象的正式字符串表示形式,通过 repr()
函数调用。
4. __len__(self)
返回对象的长度,通过内置函数 len()
调用。
5. __getitem__(self, key)
定义对象的索引访问,通过 obj[key]
进行调用。
6. __setitem__(self, key, value)
定义对象的索引赋值,通过 obj[key] = value
进行调用。
7. __delitem__(self, key)
定义对象的索引删除,通过 del obj[key]
进行调用。
8. __iter__(self)
返回一个迭代器对象,通过 iter(obj)
进行调用。
9. __next__(self)
定义迭代器的下一个元素,通过 next(obj)
进行调用。
10. __contains__(self, item)
定义成员关系测试,通过 item in obj
进行调用。
11. __eq__(self, other)
定义对象相等性,通过 obj == other
进行调用。
12. __ne__(self, other)
定义对象的不等性,通过 obj != other
进行调用。
13. __lt__(self, other)
定义对象的小于关系,通过 obj < other
进行调用。
14. __le__(self, other)
定义对象的小于等于关系,通过 obj <= other
进行调用。
15. __gt__(self, other)
定义对象的大于关系,通过 obj > other
进行调用。
16. __ge__(self, other)
定义对象的大于等于关系,通过 obj >= other
进行调用。
17. __call__(self, ...)
定义对象的可调用行为,通过 obj()
进行调用。
18. __enter__(self)
, __exit__(self, exc_type, exc_value, traceback)
用于定义上下文管理器,支持 with
语句。
19. __getattr__(self, name)
在访问不存在的属性时调用。
20. __setattr__(self, name, value)
在设置属性时调用。
21. __delattr__(self, name)
在删除属性时调用。文章来源:https://www.toymoban.com/news/detail-790154.html
这只是一小部分魔法方法,Python 中还有其他许多用于实现特定功能的魔法方法。不同的魔法方法用于支持不同的操作和特性,根据需要选择实现适当的魔法方法。文章来源地址https://www.toymoban.com/news/detail-790154.html
到了这里,关于Python中的魔法方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!