.. c:function:: Py_ssize_t PyObject_LengthHint(PyObject *o, Py_ssize_t default)
- Return an estimated length for the object *o*. First trying to return its
- actual length, then an estimate using ``__length_hint__``, and finally
- returning the default value. On error ``-1`` is returned. This is the
+ Return an estimated length for the object *o*. First try to return its
+ actual length, then an estimate using :meth:`~object.__length_hint__`, and
+ finally return the default value. On error return ``-1``. This is the
equivalent to the Python expression ``operator.length_hint(o, default)``.
.. versionadded:: 3.4
.. function:: length_hint(obj, default=0)
- Return an estimated length for the object *o*. First trying to return its
+ Return an estimated length for the object *o*. First try to return its
actual length, then an estimate using :meth:`object.__length_hint__`, and
- finally returning the default value.
+ finally return the default value.
.. versionadded:: 3.4
several cases as a result of the introduction of Argument Clinic and other
changes to the :mod:`inspect` and :mod:`pydoc` modules.
+* :meth:`~object.__length_hint__` is now part of the formal language
+ specification (see :pep:`424`). (Contributed by Armin Ronacher in
+ :issue:`16148`.)
+
New Modules
===========
reference and for use by alternate implementations of Python. (Contributed by
Zachary Ware in :issue:`16694`.)
+New function :func:`~operator.length_hint` provides an implementation of the
+specification for how the :meth:`~object.__length_hint__` special method should
+be used, as part of the :pep:`424` formal specification of this language
+feature. (Contributed by Armin Ronacher in :issue:`16148`.)
+
os
--
<http://en.wikipedia.org/wiki/Data_Execution_Prevention>`_. (Contributed by
Christian Heimes in :issue:`16632`.)
+* New function :c:func:`PyObject_LengthHint` is the C API equivalent
+ of :func:`operator.length_hint`. (Contributed by Armin Ronacher in
+ :issue:`16148`.)
+
.. _other-improvements-3.4:
- Issue #16160: Subclass support now works for types.SimpleNamespace.
+- Issue #16148: Implement PEP 424, adding operator.length_hint and
+ PyObject_LengthHint.
+
- Upgrade Unicode data (UCD) to version 6.2.
- Issue #15379: Fix passing of non-BMP characters as integers for the charmap