From: Raymond Hettinger Date: Sat, 16 Mar 2019 19:53:23 +0000 (-0700) Subject: Update the seealso entries for namedtuple() (GH-12373) X-Git-Tag: v3.8.0a3~87 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9c68543f022b130ff51944edc6771c60510ee683;p=thirdparty%2FPython%2Fcpython.git Update the seealso entries for namedtuple() (GH-12373) * Replace external recipe link with a link to the dataclasses module. * Highlight the class definition syntax for typing.NamedTuple and add an example for clarity. --- diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst index 5c783d46db35..daa741428a01 100644 --- a/Doc/library/collections.rst +++ b/Doc/library/collections.rst @@ -1028,17 +1028,20 @@ customize a prototype instance: .. seealso:: - * `Recipe for named tuple abstract base class with a metaclass mix-in - `_ - by Jan Kaliszewski. Besides providing an :term:`abstract base class` for - named tuples, it also supports an alternate :term:`metaclass`-based - constructor that is convenient for use cases where named tuples are being - subclassed. + * See :class:`typing.NamedTuple` for a way to add type hints for named + tuples. It also provides an elegant notation using the :keyword:`class` + keyword:: + + class Component(NamedTuple): + part_number: int + weight: float + description: Optional[str] = None * See :meth:`types.SimpleNamespace` for a mutable namespace based on an underlying dictionary instead of a tuple. - * See :meth:`typing.NamedTuple` for a way to add type hints for named tuples. + * The :mod:`dataclasses` module provides a decorator and functions for + automatically adding generated special methods to user-defined classes. :class:`OrderedDict` objects diff --git a/Doc/library/typing.rst b/Doc/library/typing.rst index 6ed09f1969db..de03284dfbb6 100644 --- a/Doc/library/typing.rst +++ b/Doc/library/typing.rst @@ -815,7 +815,7 @@ The module defines the following classes, functions and decorators: .. class:: NamedTuple - Typed version of namedtuple. + Typed version of :func:`collections.namedtuple`. Usage::