Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Программа должна вывести все номера телефонов, принадлежащие человеку.

Fantom Профи (639), на голосовании 1 месяц назад
Телефоны, принадлежащие одному человеку нужно вывести через пробел в том порядке, в котором они были заданы. Если программа не находит номер телефона, то программа должна вывести сообщение "Номер телефона не найден."
Код я уже сделал,но не понимаю как его исправить
 counter=int(input()) 
dct={}
for i in range(0,counter):
name,number=input().split()
if number in dct.keys():
dct[number].append(name)
else:
dct[number]=[name]
name_counter=int(input())
for i in range(0,name_counter):
a=input()
if a in dct:
print(sorted(dct[a]))
else:
print("Номер телефона не найден")
Ввод:
5
Иван 89099798900
Пётр 79199871221
Семён +79029080808
Иван 9196543210
Василий 89008001020
3
Семён
Иван
Николай
Вывод:
+79029080808
89099798900 9196543210
Номер телефона не найден
Голосование за лучший ответ
Sergio 2.1 Оракул (66079) 2 месяца назад
 # Считываем количество записей 
counter = int(input())

# Создаем словарь, где ключ - имя, значение - список телефонов
dct = {}

# Считываем записи
for _ in range(counter):
name, number = input().split()
if name in dct:
dct[name].append(number)
else:
dct[name] = [number]

# Считываем количество запросов
name_counter = int(input())

# Обрабатываем запросы
for _ in range(name_counter):
name = input()
if name in dct:
print(' '.join(dct[name]))
else:
print("Номер телефона не найден")
FantomПрофи (639) 2 месяца назад
Спасибо большое,вы мне очень помогли
Похожие вопросы