python中类的内置函数有哪些

在 Python 中,类的内置函数(也称为魔术方法或特殊方法)以双下划线开头和结尾,用于自定义类的行为。以下是一些常见的内置函数及其作用:

  1. __init__(self, ...): 构造函数,用于初始化对象。创建一个类的实例时会自动调用该方法。

  2. __del__(self): 析构函数,用于在对象被销毁时释放资源。Python 自带自动垃圾回收机制,一般情况下不需要手动调用该方法。

  3. __str__(self): 字符串表示函数,用于返回对象的可读字符串表示形式。例如,在打印一个对象时会调用该方法。

  4. __repr__(self): 与 __str__(self) 类似,也用于返回对象的字符串表示形式。区别是 __repr__(self) 返回的字符串应该是可以被解析的 Python 表达式。

  5. __len__(self): 用于返回对象中元素数量的整数。可以与 Python 内置函数 len() 配合使用。

  6. __getitem__(self, item): 用于获取对象中指定的元素。可以使用索引、切片、迭代器等方式进行操作。

  7. __setitem__(self, item, value): 用于设置对象中指定元素的值。

  8. __getattr__(self, name): 用于获取对象中不存在的属性。该方法在正常的属性访问链路中寻找不到属性时被调用。

  9. __setattr__(self, name, value): 用于设置对象中不存在的属性。

  10. __call__(self, *args, **kwargs): 将一个对象像函数一样调用。例如,obj(a, b) 就相当于 obj.__call__(a, b)

  11. __lt__(self, other), __le__(self, other), __eq__(self, other), __ne__(self, other), __gt__(self, other), __ge__(self, other): 分别用于定义对象的小于、小于等于、等于、不等于、大于、大于等于运算符。

  12. __contains__(self, item): 用于实现成员资格测试操作符 in

  13. __iter__(self): 用于返回可迭代对象的迭代器。可以使用 for 循环遍历对象。

  14. __next__(self): 用于返回可迭代对象迭代器的下一个元素。

  15. __enter__(self), __exit__(self, exc_type, exc_val, exc_tb): 分别用于实现 Python 上下文管理协议的进入和退出方法。

上述仅是一些常见的内置函数,实际上 Python 类的内置函数非常多,您可以根据需求自定义这些函数,实现更灵活和高效的类行为。

相关推荐
飞翔的佩奇1 小时前
【完整源码+数据集+部署教程】表盘指针检测系统源码和数据集:改进yolo11-CA-HSFPN
python·yolo·计算机视觉·数据集·yolo11·表盘指针检测
larance2 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
搏博2 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
麦兜*3 小时前
Swift + Xcode 开发环境搭建终极指南
开发语言·ios·swiftui·xcode·swift·苹果vision pro·swift5.6.3
lxmyzzs3 小时前
pyqt5无法显示opencv绘制文本和掩码信息
python·qt·opencv
萧鼎4 小时前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python
艾伦~耶格尔5 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
yujkss5 小时前
Python脚本每天爬取微博热搜-终版
开发语言·python
yzx9910135 小时前
小程序开发APP
开发语言·人工智能·python·yolo
飞翔的佩奇5 小时前
【完整源码+数据集+部署教程】二维码与查找模式检测系统源码和数据集:改进yolo11-CSwinTransformer
python·yolo·计算机视觉·数据集·yolo11·二维码与查找模式检测