Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 3, 2019 18:51:54

NiG
Зарегистрирован: 2019-08-02
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Задача на словарь

Нужно построить словарь, где вводится имя музыканта, название альбома и кол-во дорожек.
Написать нужно с помощью функции.
Написал программу, но она сохраняет в словарь только последние введенные значения. Как сделать так, что бы сохранялись и прошлые значения.

 def make_album(name_musican, name_album, quantity=''):
	
	album={'Name':name_musican,'Name album': name_album}
	if quantity:
		album['Quantity']=quantity
	
	return album
my_album={}
polling_active = True
while polling_active:
	
	name=input("Enter n_m ")
	alb=input("Enter n_a ")
	qty=input("Enter qty track ")
	isit = make_album(name,alb,qty)
	repeat=input("Again?(yes/no)")
	if repeat == 'no':
		polling_active = False
print(my_album)

Отредактировано NiG (Авг. 3, 2019 18:52:20)

Офлайн

#2 Авг. 3, 2019 20:14:00

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Задача на словарь

NiG
Как сделать так, что бы сохранялись и прошлые значения.
куда эти прошлые значения должны сохраняться? в список? в словарь? если в словарь то по какому ключу?



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#3 Авг. 3, 2019 20:43:16

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Задача на словарь

очевидно в my_album={} ключ генирировать по количеству циклов while, например или qty. значение ключа - isit, как то так, наверное.



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Авг. 3, 2019 20:52:21)

Офлайн

#4 Авг. 3, 2019 20:47:31

NiG
Зарегистрирован: 2019-08-02
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Задача на словарь

PEHDOM
куда эти прошлые значения должны сохраняться? в список? в словарь? если в словарь то по какому ключу?


в словарь

Отредактировано NiG (Авг. 3, 2019 20:47:48)

Офлайн

#5 Авг. 3, 2019 21:52:11

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Задача на словарь

имхо как то так

 # python2.7
# coding: utf-8
def make_album():
    name=raw_input("Enter n_m: ")
    alb=raw_input("Enter n_a: ")
    qty=raw_input("Enter qty track: ")
    return [qty, [alb, name]]
my_album={}
while True:
    isit = make_album()
    my_album[isit[0]] = isit[1]
    repeat=raw_input("Again?(y/n): ")
    if repeat == 'n':
        break
print(my_album)

или так

 # python2.7
# coding: utf-8
def make_album():
    name=raw_input("Enter n_m: ")
    alb=raw_input("Enter n_a: ")
    qty=raw_input("Enter qty track: ")
    return [qty, [alb, name]]
my_album={}
while True:
    isit = make_album()
    my_album[isit[0]] = isit[1]
    if raw_input("Again?(y/n): ") == 'n':
        break
print(my_album)

или так

 # python2.7
# coding: utf-8
my_album={}
while True:
    my_album[raw_input("Enter track: ")] = [raw_input("Enter name: "), raw_input("Enter albom: ")]
    if raw_input("Again?(y/n): ") == 'n':
        break
print(my_album)
еще вот
 # python2.7
# coding: utf-8
def yieldfunk():
    my_album={}
    while True:
        my_album[raw_input("Enter track: ")] = [raw_input("Enter name: "), raw_input("Enter albom: ")]
        yield my_album
        if raw_input("Again?(y/n): ") == 'n':
            break
print ([i for i in yieldfunk()][0])

зы создавать дубль темы было не к чему.
ззы на сколько понимаю у вас python 3.x, замените raw_input на input
—-
исправлен вызов print под 3 версию pythjn -a



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Авг. 3, 2019 23:59:27)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version