Movatterモバイル変換
[0]ホーム
[Python-Dev] namedtuple implementation grumble
Nick Coghlanncoghlan at gmail.com
Mon Jun 9 03:42:59 CEST 2014
On 9 Jun 2014 10:04, "Raymond Hettinger" <raymond.hettinger at gmail.com>wrote:>>> On Jun 7, 2014, at 6:25 AM, R. David Murray <rdmurray at bitdance.com> wrote:>>>> I guess I could duck-type it based on the _fields attribute but that>>> feels implicit and fragile.>>>>>> What do you guys suggest?>>>>>> I seem to remember a previous discussion that concluded that duck typing>> based on _fields was the way to go. (It's a public API, despite the _,>> due to name-tuple's attribute namespacing issues.)>>> Yes. That is the recommended approach.>> IIRC that was Guido's suggestion rather than creating an abstract> base class for a named tuple (any tuple-like class with indexable> elements that are also accessible using named attributes).Given the somewhat periodic recurrence of the question, might it be worthmaking an ABC after all, with "subclass of tuple with a _fields attribute"as its default check?"isinstance(obj, collections.NamedTupleABC)" is quite a bit moreself-documenting than "isinstance(obj, tuple) and hasattr(obj, '_fields')"Cheers,Nick.>>> Raymond>>> _______________________________________________> Python-Dev mailing list>Python-Dev at python.org>https://mail.python.org/mailman/listinfo/python-dev> Unsubscribe:https://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com>-------------- next part --------------An HTML attachment was scrubbed...URL: <http://mail.python.org/pipermail/python-dev/attachments/20140609/ddaa2075/attachment.html>
More information about the Python-Devmailing list
[8]ページ先頭