[Python-ideas] namedtuple literals [Was: RE a new namedtuple]
apalala at gmail.com
Fri Jul 21 14:36:54 EDT 2017
> Honestly I would like to declare the bare (x=1, y=0) proposal dead. Let's
> encourage the use of objects rather than tuples (named or otherwise) for
> most data exchanges. I know of a large codebase that uses dicts instead of
> objects, and it's a mess. I expect the bare ntuple to encourage the same
Languages since the original Pascal have had a way to define types by
structure. If Python did the same, ntuples with the same structure would be
typed "objects" that are not pre-declared.
In Python's case, because typing of fields is not required and thus can't
be used to hint the structures type, the names and order of fields could be
used. Synthesizing a (reserved) type name for (x=1, y=0) should be straight
>>> isinstance(x=None, y=None), type((x=1, y=0)))
That can be implemented with namedtuple with some ingenious mangling for
the (quasi-anonymous) type name.
Equivalence of types by structure is useful, and is very different from the
mess that using dicts as records can produce.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Python-ideas