Я работаю со списком namedtuples. Я хотел бы добавить поле к каждому названному кортежу после его создания. Кажется, я могу сделать это, просто ссылаясь на него как на атрибут (как в namedtuple.attribute = 'foo'
), но затем он не добавляется в список полей. Есть ли причина, почему я не должен делать это таким образом, если я ничего не делаю с списком полей? Есть ли лучший способ добавить поле?
>>> from collections import namedtuple
>>> result = namedtuple('Result',['x','y'])
>>> result.x = 5
>>> result.y = 6
>>> (result.x, result.y)
(5, 6)
>>> result.description = 'point'
>>> (result.x, result.y, result.description)
(5, 6, 'point')
>>> result._fields
('x', 'y')