Мне известно о существовании и назначении collections.namedtuple
, но я заметил, что по крайней мере в IDLE (3.2.2) эта фабричная функция также находится в functools
:
>>> import functools
>>> functools.namedtuple
<function namedtuple at 0x024B41E0>
Он также существует в collections
, как и ожидалось, и является той же функцией:
>>> import collections
>>> collections.namedtuple is functools.namedtuple
True
Никакие документы, которые я могу найти, когда-либо упоминают, что namedtuple
находится где-либо еще чем коллекции. Итак: это стандарт или просто странность IDLE? Если это просто IDLE, то это ошибка или почему namedtuple
может быть в двух местах - и, действительно, в чьем извращенном уме это имеет смысл в functools
из всех мест?