Ошибка в книге Эрика Мэтиза? (Функции, Возвращение словаря)

На странице 154 книги "Изучаем Python" Эрика Мэтиза имеется код:

Изображение для упрощения восприятия

def build_person(first_name, last_name):
    person = {'first': first_name, 'last': last_name}
    if age:
        person['age'] = age
    return person

musician = build_person('jimi', 'hendrix', age=27)
print(musician)

При попытке выполнить(Sublime Text Build 4126, версия python 3.8.9) выдает следующее:

Traceback (most recent call last):
  File "C:\Users\*****\Desktop\test.py", line 6, in <module>
    musician = build_person('jimi', 'hendrix', age=27)
TypeError: build_person() got an unexpected keyword argument 'age'

Вопрос: автор ошибся? Если нет - как было бы правильно?


Ответы (1 шт):

Автор решения: CrazyElf

Да, видимо опечатка, в заголовок функции build_person нужно добавить параметр age:

def build_person(first_name, last_name, age):
                                      ^^^^^
→ Ссылка