Более эффективное решение: используйте специальный _make
альтернативный конструктор , чтобы непосредственно построить namedtuple
из произвольного итеративного без создания дополнительного промежуточного tuple
s (как распаковка звезды к основному конструктору требуется). Выполняется быстрее, меньше отбросов памяти:
Point._make(t)
Несмотря на имя, _make
является частью общедоступного API; он назван с лидирующим подчеркиванием, чтобы избежать конфликтов с именами полей (которые не могут начинаться с подчеркивания).