У меня есть названный класс кортежа в Python
class Town(collections.namedtuple('Town', [
    'name', 
    'population',
    'coordinates',
    'population', 
    'capital', 
    'state_bird'])):
    # ...
 Я хотел бы преобразовать экземпляры Town в словари. Я не хочу, чтобы он был жестко привязан к именам или количеству полей в городе.
Есть ли способ написать это так, чтобы я мог добавить больше полей или передать совершенно другой именованный кортеж и получить словарь.
Я не могу изменить первоначальное определение класса, как в чужом коде. Поэтому мне нужно взять экземпляр Town и преобразовать его в словарь.