Python 特殊方法一覽
和運算符無關(guān)的特殊方法
| 類別 | 方法名 |
|---|---|
| 字符串/字節(jié)序列表示形式 | __repr__, __str__, __format__, __bytes__ |
| 數(shù)值轉(zhuǎn)換 | __abs__, __bool__, __complex__, __int__, __float__, __hash__, __index__ |
| 集合模擬 | __len__, __getitem__, __setitem__, __delitem__, __contains__ |
| 迭代枚舉 | __iter__, __reversed__, __next__ |
| 可調(diào)用模擬 | __call__ |
| 上下文管理 | __enter__, __exit__ |
| 實例創(chuàng)建和銷毀 | __new__, __init__, __del__ |
| 屬性管理 | __getattr__, __setattr__, getattribute__, __setattribute__, __delattr__, __dir__ |
| 屬性描述符 | __get__, __set__, __delete__ |
| 跟類相關(guān)的服務 | __prepare__, __instancecheck__, __subclasscheck__ |
和運算符相關(guān)的特殊方法
| 類別 | 方法名和對應的運算符 |
|---|---|
| 一元運算符 | __neg__ - , __pos__ +, __abs__ abs() |
| 眾多比較運算符 | __lt__ <, __le__ <=, __eq__ =, __ne__ !=, __gt__ >, __ge__ >= |
| 算術(shù)運算符 | __add__ +, __sub__ - , __mul__ *, __truediv__ /, __floordiv //, __mod__ %, __divmod__ divmod(), __pow__ **或 pow(), __round__ round() |
| 反向算術(shù)運算符 | __radd__, __rsub__, __rmul__, __rtruediv__, __rfloordiv__, __rmod__, __rdivmod__, __rpow__ |
| 增量賦值算術(shù)運算符 | __iadd__, __isub__, __imul__ , __itruediv__, __ifloordiv__, __imod__, __ipow__ |
| 位運算符 | __invert__ ~, __lshift__ <<, __rshift__ >>, __and__ &, __or__ , __xor__ ^ |
| 反向位運算符 | __rlshift__, __rrshift__, __rand__, __rxor__, __ror__ |
| 增量賦值位運算符 | __ilshift__, __irshift__, __iand__, __ixor__, __ior__ |