Why does Python not support record type? (i.e. mutable namedtuple)

Why does Python not support a record type natively? It's a matter of having a mutable version of namedtuple.

I could use namedtuple._replace. But I need to have these records in a collection and since namedtuple._replace creates another instance, I also need to modify the collection which becomes messy quickly.

Background: У меня есть устройство, атрибуты которого мне нужно получить, опросив его по TCP / IP. т.е. его представление - изменяемый объект.

Изменить: У меня есть набор устройств, для которых мне нужно опросить.

Edit: Мне нужно перебрать объект, отображающий его атрибуты, с помощью PyQt. Я знаю, что могу добавить специальные методы, такие как __ getitem __ и __ iter __ , но я хочу знать, есть ли более простой способ.

Изменить: Я бы предпочел тип, атрибуты которого фиксированы (как в моем устройстве), но являются изменяемыми.

48
задан railgun 24 January 2018 в 06:15
поделиться