Gdzie jest dokumentacja Pythona dla specjalnych metod? (init, new, len, …)

Gdzie jest pełna lista specjalnych metod podwójnego podkreślenia/dundera, które mogą być używane w klasach? (np., __init__, __new__, __len__, __add__)

Author: user2314737, 2009-09-14

9 answers

Proszę spojrzeć na specjalne nazwy metod W referencji języka Python.

 43
Author: Martin Geisler,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-14 17:54:00

Dive Into Python ma doskonały dodatek dla nich.

 9
Author: Jonny Buchanan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-06 04:42:34
 7
Author: e-satis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-13 21:06:14

Jeśli, tak jak ja, chcesz mieć nieskazitelną listę, oto ona. Skompilowałem go w oparciu o link Dokumentacja Pythona z zaakceptowanej odpowiedzi.

__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__
 6
Author: Justin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-11 20:35:13
 4
Author: Elazar Leibovich,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-13 21:16:10

Zrób to, jeśli wolisz czytać dokumentację z CLI zamiast z przeglądarki.

$ pydoc SPECIALMETHODS

 2
Author: IcarianComplex,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-16 05:03:20

Dla kogoś, kto jest stosunkowo nowy w Pythonie i dla kogo dokumentacja jest często niewystarczająco dostępna (jak ja): ktoś napisał ładne wprowadzenie z mnóstwem przykładów na to, jak działają specjalne (magiczne) metody, jak ich używać, itp.

 2
Author: Stefan van den Akker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-29 19:28:34

Zapoznaj się z funkcją dir.

 0
Author: TheOne,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-09-13 21:49:58

Metody Pythona double underscore ("dunder") są również znane jako metody datamodel, ponieważ są one podstawą modelu danych Pythona, zapewniając protokół dostosowywania (przeciążania) wbudowanych metod. Jest to powód, dla którego są one wymienione w sekcji "Model danych" dokumentacji Pythona.

 0
Author: user2314737,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-03 22:47:30