Differences creating tuples and collections.namedtuples

Oscar Benjamin oscar.j.benjamin at gmail.com
Mon Feb 18 15:12:03 CET 2013


On 18 February 2013 13:51, John Reid <johnbaronreid at gmail.com> wrote:
> On 18/02/13 12:03, Oscar Benjamin wrote:
>> On 18 February 2013 11:47, John Reid <johnbaronreid at gmail.com> wrote:
>>> Hi,
>>>
>>> I was hoping namedtuples could be used as replacements for tuples in all instances.
>> namedtuples are not really intended to serves as tuples anywhere. They
>> are intended to provide lightweight, immutable, hashable objects with
>> *named* (rather than numbered) values.
>
> If they are not supposed to be tuples then calling them namedtuples and
> inheriting from tuple seems a little odd.

You can use namedtuple instances in places that expect tuples.
Inheriting from tuples enables them to be all the things I said:
lightweight, immutable and hashable. The type object itself has a
different interface for the constructor, though.


Oscar



More information about the Python-list mailing list