[Python-checkins] r69240 - python/trunk/Doc/library/operator.rst

raymond.hettinger python-checkins at python.org
Tue Feb 3 04:18:15 CET 2009


Author: raymond.hettinger
Date: Tue Feb  3 04:18:14 2009
New Revision: 69240

Log:
Record operator deprecations in docs.

Modified:
   python/trunk/Doc/library/operator.rst

Modified: python/trunk/Doc/library/operator.rst
==============================================================================
--- python/trunk/Doc/library/operator.rst	(original)
+++ python/trunk/Doc/library/operator.rst	Tue Feb  3 04:18:14 2009
@@ -269,6 +269,9 @@
 .. function:: repeat(a, b)
               __repeat__(a, b)
 
+   .. deprecated:: 2.7
+      Use :func:`__mul__` instead.
+
    Return ``a * b`` where *a* is a sequence and *b* is an integer.
 
 
@@ -387,6 +390,9 @@
 .. function:: irepeat(a, b)
               __irepeat__(a, b)
 
+   .. deprecated:: 2.7
+      Use :func:`__imul__` instead.
+
    ``a = irepeat(a, b)`` is equivalent to ``a *= b`` where *a* is a sequence and
    *b* is an integer.
 
@@ -427,33 +433,14 @@
 
 
 The :mod:`operator` module also defines a few predicates to test the type of
-objects.
-
-.. note::
-
-   Be careful not to misinterpret the results of these functions; only
-   :func:`isCallable` has any measure of reliability with instance objects.
-   For example:
-
-      >>> class C:
-      ...     pass
-      ...
-      >>> import operator
-      >>> obj = C()
-      >>> operator.isMappingType(obj)
-      True
-
-.. note::
-
-   Python 3 is expected to introduce abstract base classes for
-   collection types, so it should be possible to write, for example,
-   ``isinstance(obj, collections.Mapping)`` and ``isinstance(obj,
-   collections.Sequence)``.
+objects; however, these are not all reliable.  It is preferable to test
+abstract base classes instead (see :mod:`collections` and
+:mod:`numbers` for details).
 
 .. function:: isCallable(obj)
 
    .. deprecated:: 2.0
-      Use the :func:`callable` built-in function instead.
+      Use ``isinstance(x, collections.Callable)`` instead.
 
    Returns true if the object *obj* can be called like a function, otherwise it
    returns false.  True is returned for functions, bound and unbound methods, class
@@ -462,6 +449,9 @@
 
 .. function:: isMappingType(obj)
 
+   .. deprecated:: 2.7
+      Use ``isinstance(x, collections.Mapping)`` instead.
+
    Returns true if the object *obj* supports the mapping interface. This is true for
    dictionaries and all instance objects defining :meth:`__getitem__`.
 
@@ -474,6 +464,9 @@
 
 .. function:: isNumberType(obj)
 
+   .. deprecated:: 2.7
+      Use ``isinstance(x, numbers.Number)`` instead.
+
    Returns true if the object *obj* represents a number.  This is true for all
    numeric types implemented in C.
 
@@ -486,6 +479,9 @@
 
 .. function:: isSequenceType(obj)
 
+   .. deprecated:: 2.7
+      Use ``isinstance(x, collections.Sequence)`` instead.
+
    Returns true if the object *obj* supports the sequence protocol. This returns true
    for all objects which define sequence methods in C, and for all instance objects
    defining :meth:`__getitem__`.


More information about the Python-checkins mailing list