#python基础知识#
一、魔法方法(Magic methods)是以下双划线(`__`)开头和结尾的特殊方法,也被称为特殊方法或双下方法。这些方法定义了对象在特定操作中的行为,如实例化、字符串表示、属性访问、算数运算等。魔法方法使得你可以自定义类的行为,使其更符合你的要求。
以下是常用的魔法方法:
1. `__init__(self, ...)
`: 初始化方法,在对象实例化时被调用。
2. `__str__(self)`:返回对象的字符串表示,使用`str(obj)`时调用。
3. `__repr__(sefl)`:返回对象的字符串表示,使用`repr(obj)`时调用。通常用于开发和调试。
4. `__len__(self)`:返回对象的长度,使用`len(obj)`时调用。
5. `__getitem__(self, key)`:定义对象的索引操作,使用`obj[key]`时调用。
6. `__setitem__(self, key, value)`:定义对象的索引赋值操作,使用`obj[key] = value`时调用。
7. `__delitem__(self, key)`:定义对象的索引删除操作,使用`obj[key]` = value时调用。
8. `__iter__(self)`:定义对象的迭代行为,使对象可迭代。
9. `__next__(self)`:定义迭代器的下一个元素,与`__iter__`一起使用。