📅 2017-Feb-27 ⬩ ✍️ Ashwin Nanjappa ⬩ 🏷️ dict, namedtuple, python ⬩ 📚 Archive
A Python dict is extremely versatile. However, there might be situations where you want to access the dict as if it were a class object and the keys were its fields.
This can be easily done by using a namedtuple. Just give it a name and the use the keys to populate its named fields. Set the values for those fields by passing the values from the dict. It all boils down to a single line.
This example code demonstrates the above:
>>> from collections import namedtuple
>>> d = {"name": "joe", "age": 20}
>>> d
'age': 20, 'name': 'joe'}
{>>> d_named = namedtuple("Employee", d.keys())(*d.values())
>>> d_named
='joe', age=20)
Employee(name>>> d_named.name
'joe'