Ничего нет в последних словарях. Они выводятся, а в них ничего не написано

import time

def make_album(исполнитель='', альбом='', исполнитель1='', альбом1='', исполнитель2='', альбом2=''):
    исполнитель_альбом = {исполнитель: альбом}
    исполнитель_альбом1 = {исполнитель1: альбом1}
    исполнитель_альбом2 = {исполнитель2: альбом2}
    return исполнитель_альбом
    return исполнитель_альбом1
    return исполнитель_альбом2


musician1 = make_album(исполнитель='Pink Floyd', альбом='Dark side of the moon')
print(musician1)

musician2 = make_album(исполнитель1='Егор Летов', альбом1='Зачем снятся сны?')
print(musician2)

musician3 = make_album(исполнитель2='Metallica', альбом2='Kill em all')
print(musician3)

time.sleep(5)

В консоли выводится это:

{'Pink Floyd': 'Dark side of the moon'}

{'': ''}

{'': ''}


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

Автор решения: Стас

Функции используются для сокращения кода, если одну и туже часть кода нужно вызывать много раз, меняя в ней всего несколько значений. Значит не нужно описывать все возможные аргументы для функции. Также код после return не выполняется и не даёт значения словарям.

import os

def make_album(исполнитель, альбом):
    исполнитель_альбом = {исполнитель: альбом}
    return исполнитель_альбом


musician1 = make_album(исполнитель='Pink Floyd', альбом='Dark side of the moon')
print(musician1)

musician2 = make_album(исполнитель='Егор Летов', альбом='Зачем снятся сны?')
print(musician2)

musician3 = make_album(исполнитель='Metallica', альбом='Kill em all')
print(musician3)

os.system("pause")
→ Ссылка