On 03/14/2011 07:46 AM, Antoine Pitrou wrote:
On Mon, 14 Mar 2011 06:29:09 -0400
Eric Smith<e...@trueblade.com> wrote:
On 03/14/2011 02:33 AM, Greg Ewing wrote:
Tim Lesher wrote:
Because named tuple prefixes a single underscore to its added method
names (_asdict, _replace, and _make), those methods' docstrings are
omitted from pydoc:
IMO these should be called __asdict__, __replace__ and
__make__. Users are perfectly entitled to make up their
own single-underscore names, so using a single underscore
is not sufficient to prevent name collisions.
namedtuple won't let you use names starting with an underscore, so the
single underscore names are sufficient.
Not for members perhaps, but nothing prevents you from defining methods
with these names in a subclass AFAIK.
Good point. You can define methods or other attributes this way:
>>> from collections import namedtuple
>>> A = namedtuple('A', 'x y')
>>> class B(A):
... _replace = 3
...
>>> b = B(1, 2)
>>> b._replace
3
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com