Найти - Пользователи
Полная версия: Задачка на списки/
Начало » Python для новичков » Задачка на списки/
1
NiG
Всем здрасте! Недавно начать изучать 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
NiG
Нужно создать список
NiG
Но у меня сохраняется последние введенные значения
ни в каком месте вашего кода нет прямого или опосредованного обращения к списку
NiG
FishHook
Опечатка- словарь.
michaelvrein
Тоже начал изучать этот язык. Но на сколько я понимаю Вы просто затираете ранее введенные значения в словаре новыми, а не добавляете их. Просто меняете значения ключей
ZiG
Может вам нужен список, состоящий из словарей?
michaelvrein
ZiG
Может вам нужен список, состоящий из словарей?
вот у меня тоже была мысль, что необходимо добавлять новые значения, пусть в тот же список

Если я правильно понял код, который показан, то там именно перезапись значений идет…
AD0DE412
 #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)

зы с функцией у вас что то не очень. что за quantity?
ззы вы сколько времени python изучаете? и как? я тоже только начинаю (2 месяца), читаю Лутц “Изучаем Python” ст.700 просто затык на классах, блин.

NiG
AD0DE412
quantity - это кол-во дорожек. В задании так. Только прошел функции.
Читаю книгу Эрика Мэтиза.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB