Как правильно вывести произвольный список именованных аргументов?
Напишите функцию, принимающую сведения об авторе (в виде произвольного списка именованных аргументов) и выводящая их на экран в указанном формате: И.О.Фамилия (дата рождения - дата смерти) - краткая информация
def creator( sep = '.', **kwargs):
return kwargs['name'][0]
print(creator(name = 'Lev', patr = 'Nikolaevich', surname = 'Tolstoi',birth =
'09.09.1828', death = '20.11.1920', krt = 'Russian author'))
Ответы (2 шт):
Автор решения: nomnoms12
→ Ссылка
Вы можете сделать это с помощью строк формата.
Пример:
def creator(sep='.', **kwargs):
n = kwargs['name'][0]
p = kwargs['patr'][0]
surname = kwargs['surname']
birth = kwargs['birth']
death = kwargs['death']
krt = kwargs['krt']
return f'{n}{sep}{p}{sep}{surname} ({birth} - {death}) - {krt}'
print(creator(name='Lev', patr='Nikolaevich', surname='Tolstoi', birth='09.09.1828', death='20.11.1920', krt='Russian author'))
stdout:
L.N.Tolstoi (09.09.1828 - 20.11.1920) - Russian author
Автор решения: gil9red
→ Ссылка
Пример через метод str.format:
def creator(sep='.', **kwargs) -> str:
return '{name[0]}{sep}{patr[0]}{sep}{surname} ({birth} - {death}) - {krt}'.format(**kwargs, sep=sep)
print(creator(
name='Lev', patr='Nikolaevich', surname='Tolstoi',
birth='09.09.1828', death='20.11.1920', krt='Russian author'
))
# L.N.Tolstoi (09.09.1828 - 20.11.1920) - Russian author