diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 7e2d2e66cac..b20b708e957 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -2146,6 +2146,8 @@ through the container; for mappings, :meth:`__iter__` should be the same as .. versionadded:: 3.4 +.. index:: object: slice + .. note:: Slicing is done exclusively with the following three methods. A call like :: @@ -2161,8 +2163,6 @@ through the container; for mappings, :meth:`__iter__` should be the same as .. method:: object.__getitem__(self, key) - .. index:: object: slice - Called to implement evaluation of ``self[key]``. For sequence types, the accepted keys should be integers and slice objects. Note that the special interpretation of negative indexes (if the class wishes to emulate a sequence @@ -2178,12 +2178,6 @@ through the container; for mappings, :meth:`__iter__` should be the same as indexes to allow proper detection of the end of the sequence. -.. method:: object.__missing__(self, key) - - Called by :class:`dict`\ .\ :meth:`__getitem__` to implement ``self[key]`` for dict subclasses - when key is not in the dictionary. - - .. method:: object.__setitem__(self, key, value) Called to implement assignment to ``self[key]``. Same note as for @@ -2202,6 +2196,12 @@ through the container; for mappings, :meth:`__iter__` should be the same as values as for the :meth:`__getitem__` method. +.. method:: object.__missing__(self, key) + + Called by :class:`dict`\ .\ :meth:`__getitem__` to implement ``self[key]`` for dict subclasses + when key is not in the dictionary. + + .. method:: object.__iter__(self) This method is called when an iterator is required for a container. This method