Yurttas/PL/SL/python/docs/core-python-programming/doc/20/ref/specialnames.html
3.3 Special method names
A class can implement certain operations that are invoked by special syntax (such as arithmetic operations or subscripting and slicing) by defining methods with special names. For instance, if a class defines a method named __getitem__(), and x is an instance of this class, then x[i] is equivalent to x.__getitem__(i). (The reverse is not true -- if x is a list object, x.__getitem__(i) is not equivalent to x[i].) Except where mentioned, attempts to execute an operation raise an exception when no appropriate method is defined.
Subsections
- 3.3.1 Basic customization
- 3.3.2 Customizing attribute access
- 3.3.3 Emulating callable objects
- 3.3.4 Emulating sequence and mapping types
- 3.3.5 Additional methods for emulation of sequence types
- 3.3.6 Emulating numeric types
See About this document... for information on suggesting changes.