可以在類中使用的特殊雙下劃線/ dunder方法的完整列表在哪裏? (例如,__init__
,__new__
,__len__
,__add__
)特殊方法的Python文檔在哪裏? (__init__,__new__,__len__,...)
23
A
回答
39
6
8
潛入Python對他們來說有an excellent appendix。
3
0
2
對於一個相對較新的Python人來說,文檔通常不夠用(像我一樣):有人寫了一個nice introduction,裏面有很多關於如何使用特殊(魔術)方法的例子,如何使用他們等
4
如果像我一樣,你想要一個簡單的,樸實無華的列表,在這裏。我根據接受的答案編譯了Python documentation link。
__abs__
__add__
__and__
__call__
__class__
__cmp__
__coerce__
__complex__
__contains__
__del__
__delattr__
__delete__
__delitem__
__delslice__
__dict__
__div__
__divmod__
__eq__
__float__
__floordiv__
__ge__
__get__
__getattr__
__getattribute__
__getitem__
__getslice__
__gt__
__hash__
__hex__
__iadd__
__iand__
__idiv__
__ifloordiv__
__ilshift__
__imod__
__imul__
__index__
__init__
__instancecheck__
__int__
__invert__
__ior__
__ipow__
__irshift__
__isub__
__iter__
__itruediv__
__ixor__
__le__
__len__
__long__
__lshift__
__lt__
__metaclass__
__mod__
__mro__
__mul__
__ne__
__neg__
__new__
__nonzero__
__oct__
__or__
__pos__
__pow__
__radd__
__rand__
__rcmp__
__rdiv__
__rdivmod__
__repr__
__reversed__
__rfloordiv__
__rlshift__
__rmod__
__rmul__
__ror__
__rpow__
__rrshift__
__rshift__
__rsub__
__rtruediv__
__rxor__
__set__
__setattr__
__setitem__
__setslice__
__slots__
__str__
__sub__
__subclasscheck__
__truediv__
__unicode__
__weakref__
__xor__
1
如果您喜歡從CLI而不是瀏覽器閱讀文檔,請執行此操作。
$ pydoc SPECIALMETHODS
0
Python的雙下劃線(「dunder」)的方法也被稱爲數據模型方法,因爲它們是在Python的數據模型的核心,提供用於定製(重載)內置方法的協議。 這就是它們在Python文檔的"Data Model"部分列出的原因。
相關問題
- 1. 特殊方法 - Python
- 2. 重寫__new__和__init__在Python
- 3. `@ numba.jitclass`特殊方法去哪裏?
- 4. 的Python:重寫__init__ ARGS在__new__
- 5. __init__,__new__等的模塊
- 6. Python(和Python C API):__new__與__init__
- 7. Python的__enter__/__exit__ VS __init__(或__new__)/ __del__
- 8. 子類namedtuple,__new__和__init__
- 9. 哪些特殊的方法繞過Python中的__getattribute__?
- 10. Python:總是使用__new__而不是__init__?
- 11. python類的特殊方法需要特殊名稱嗎?
- 12. WebDriver的Python API文檔在哪裏?
- 13. 如何在__init__上創建__len__函數?
- 14. 把docstrings放在特殊的方法上?
- 15. chmod的官方文檔在哪裏?
- 16. 「attr_accessor」和「Module」的其他方法的官方文檔在哪裏?
- 17. 在哪裏可以找到有關使用反引號的特殊php exec方法的文檔?
- 18. CVOpenGLESTexture方法類型的官方文檔在哪裏?
- 19. Rspec的文檔在哪裏?
- 20. Fragment.onCreateAnimator()的文檔在哪裏?
- 21. _()的文檔在哪裏?
- 22. glutInitContextVersion的文檔在哪裏?
- 23. tasks.withType()的文檔在哪裏?
- 24. 「AndEngine」的文檔在哪裏?
- 25. openid1_claimed_id的文檔在哪裏?
- 26. multiprocessing.pool.ApplyResult的文檔在哪裏?
- 27. pandas:TimeGrouper的文檔在哪裏?
- 28. libattr的文檔在哪裏?
- 29. OpenSMPP的文檔在哪裏?
- 30. 使用類'__new__方法作爲工廠:__init__被調用兩次
您無法找到Python文檔的位置? – 2009-09-13 23:16:04
@ Mk12:標籤與問題無關。請停止回覆 – SilentGhost 2009-09-14 18:16:22
@ S.Lott也許OP根本找不到相關章節?如果你沒有建設性的東西來添加... – 2012-01-23 02:15:03