Найти - Пользователи
Полная версия: Помогите с маленькой программкой, пожалуйста
Начало » Python для новичков » Помогите с маленькой программкой, пожалуйста
1
AminSugar


В условии не указано, сколько нужно вводить, но я так понял до ввода пробела.
Вот что есть:
 d = {}
def func(key, val):
    if key in d:
        d[key] += int(val)
    else:
        d[key] = int(val)
while True:       
    text = input()
    if not text:
        break
    key, val = text.split()
    func(key, val)
l = d.keys()
l = list(l) 
l.sort() 
for i in l: 
    print(i, d[i])
У меня в IDLE все работает, но на сайте выдает ошибку:


marvellik
попробуйте заменить ваш цикл на такой
 while True: 
    try:      
        text = input()
    except : # или  except EOFE error:
        break
если это задание с pythontutor то там в первой строке данных стоит цифра и задании явно написано
''В первой строке дано количество записей. Далее, каждая запись содержит фамилию кандидата и число голосов…..''
AminSugar
Задание с yandex contest, там написано именно так, да и при проверке моего кода сайт вводил различное число строк, причем без ввода количества строк в начале.
Заменил цикл на:
 while True: 
    try:      
        text = input()
    except :
        break
и получил ошибку:
 Traceback (most recent call last):
  File "C:/Users/amini/Desktop/A.py", line 12, in <module>
    key, val = text.split()
ValueError: not enough values to unpack (expected 2, got 0)
а если заменить expect на except EOFE error получаю ошибку “invalid syntax”.
AminSugar
Надо было всего-лишь одну строку в try поднять и заработало.
Спасибо, @marvellik.
 d = {}
def func(key, val):
    if key in d:
        d[key] += int(val)
    else:
        d[key] = int(val)
while True: 
    try:      
        text = input()
        key, val = text.split()
    except: 
        break
    func(key, val)
l = d.keys()
l = list(l) 
l.sort() 
for i in l: 
    print(i, d[i])
marvellik
мне кажется и строку func(key, val) тоже в блок try надо прописать
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