python-workout
python-workout copied to clipboard
e13b1_namedtuple_records.py throws KeyError
The solution in e13b1_namedtuple_records.py throws an error: KeyError: 'last'
In the solution below:
def format_sort_records(list_of_tuples):
output = []
template = '{last:10} {first:10} {distance:5.2f}'
for person in sorted(list_of_tuples, key=operator.attrgetter('last', 'first')):
output.append(template.format(*(person._asdict())))
return output
I believe you need two asterisks in output.append to make it work:
output.append(template.format(**(person._asdict())))
Reference: https://docs.python.org/3/tutorial/controlflow.html#unpacking-argument-lists