Форум сайта python.su
0
Всем здрасте!
Недавно начать изучать python и столкнулся с решением одной задачки.
Нужно создать список, с именем музыканта, альбома и кол-ва дорожек. Нужно что бы сохранялось их столько, сколько введет пользователь. Но у меня сохраняется последние введенные значения. Помогите пожалуйста
def make_album(name_musican, name_album, quantity=''): alb={'Name':name_musican,'Name album': name_album} if quantity: alb['Quantity']=quantity return alb polling_activ = True while polling_activ: name=input("\nName: ") namealb=input("\nAlbum: ") qty=input("\nQty: ") album=make_album(name,namealb,qty) print(album) repeat= input("\nAgain?(yes/no)") if repeat=='no': polling_activ = False
Отредактировано FishHook (Авг. 2, 2019 16:12:42)
Офлайн
568
NiG
Нужно создать список
NiGни в каком месте вашего кода нет прямого или опосредованного обращения к списку
Но у меня сохраняется последние введенные значения
Офлайн
0
FishHookОпечатка- словарь.
Офлайн
0
Тоже начал изучать этот язык. Но на сколько я понимаю Вы просто затираете ранее введенные значения в словаре новыми, а не добавляете их. Просто меняете значения ключей
Офлайн
0
Может вам нужен список, состоящий из словарей? 
Офлайн
0
ZiGвот у меня тоже была мысль, что необходимо добавлять новые значения, пусть в тот же список
Может вам нужен список, состоящий из словарей?
Офлайн
44
#coding: utf-8 #python 2.7 def make_album(name_musican, name_album, quantity=''): alb={'Name':name_musican,'Name album': name_album} if quantity: alb['Quantity']=quantity return alb '''вот здесь должна быть переменная в которую накопительно складываются значения переменной isit вычисляемой функцией make_album() в каждом цикле пример см. ниже ''' my_albom = {} while True: musican = raw_input("Name: ") album = raw_input("Album: ") qty = raw_input("Qty: ") isit = make_album(musican, album, qty) '''что то что накопительно складывает в переменную my_albom значение isit как это сделать? см. ниже в документации ''' print(help(my_albom)) print("<-- add:", isit) repeat= raw_input("Again?(yes/no): ") if repeat == 'no': break #вывод print("result: --> ",my_albom)
и вставьте ссылку на его url Отредактировано AD0DE412 (Авг. 3, 2019 10:12:33)
Офлайн
0
AD0DE412quantity - это кол-во дорожек. В задании так. Только прошел функции.
Отредактировано NiG (Авг. 3, 2019 17:06:26)
Офлайн