मैं अस्तित्व और collections.namedtuple
के प्रयोजन के बारे में पता कर रहा हूँ, लेकिन मैं देखा है कि, कम से कम प्रयोग में नहीं (3.2.2) में, इस कारखाने समारोह functools
में भी है:अजगर functools.namedtuple
>>> import functools
>>> functools.namedtuple
<function namedtuple at 0x024B41E0>
यह भी collections
अपेक्षा के अनुरूप में मौजूद है, और एक ही समारोह है:
>>> import collections
>>> collections.namedtuple is functools.namedtuple
True
कोई डॉक्स मैं पा सकते हैं कभी namedtuple
कहीं भी संग्रह के अलावा अन्य किया जा रहा है का उल्लेख है। तो: क्या यह मानक है, या सिर्फ एक आइडल अजीबता है? अगर यह सिर्फ आईडीईएल है, तो क्या यह एक बग है या क्यों namedtuple
दो स्थानों पर होगा - और, वास्तव में, किसके युद्ध में दिमाग में यह सभी जगहों के functools
में समझ में आता है?
from collections import OrderedDict, namedtuple
यह बहुत स्पष्ट लगता है कि यह मॉड्यूल के कार्यान्वयन के लिए सिर्फ एक सुविधा आयात है, और इसकी सार्वजनिक इंटरफ़ेस का हिस्सा बनने का इरादा नहीं है: