Возвращаемое значение
153
musician = get_formatted_name('jimi', 'hendrix')
print(musician)
❹
musician = get_formatted_name('john', 'hooker', 'lee')
print(musician)
В этом примере имя строится из трех возможных частей. Поскольку имя и фамилия
указываются всегда, эти параметры стоят в начале списка в определении функции.
Второе имя не обязательно, поэтому оно находится на последнем месте в опреде-
лении, а его значением по умолчанию является пустая строка
.
В теле функции мы сначала проверяем, было ли задано второе имя. Python интер-
претирует непустые строки как истинное значение, и если при вызове задан аргумент
второго имени,
middle_name
дает результат
True
. Если второе имя указано, то из
имени, второго имени и фамилии строится полное имя. Затем имя преобразуется
с капитализацией символов и возвращается в строку вызова функции, где оно со-
храняется в переменной
musician
и выводится. Если второе имя не указано, то пустая
строка не проходит проверку
if
и выполняет блок
else
. В этом случае полное
имя строится только из имени и фамилии и отформатированное имя возвращается
в строку вызова, где оно сохраняется в переменной
musician
и выводится.
Вызов этой функции с именем и фамилией достаточно тривиален. Но при ис-
пользовании второго имени придется проследить за тем, чтобы второе имя было
последним из передаваемых аргументов. Это необходимо для правильного связы-
вания позиционных аргументов в строке
.
Обновленная версия этой функции подойдет как для людей, у которых задается
только имя и фамилия, так и для людей со вторым именем:
Jimi Hendrix
John Lee Hooker
Необязательные значения позволяют функциям работать в максимально широком
спектре сценариев использования без усложнения вызовов.
Возвращение словаря
Функция может вернуть любое значение, которое вам потребуется, в том числе
и более сложную структуру данных (например, список или словарь). Так, следующая
функция получает части имени и возвращает словарь, представляющий человека:
Достарыңызбен бөлісу: