Форум сайта python.su
0
Напишите программу, которая формирует на основе введенной пользователем информации словарь, состоящий из ФИО некоторого лица и номера его телефона. Данные должны быть упорядочены по алфавиту. Выведите на экран структурированную информацию в следующем формате:
Фамилия Имя Отчество => <телефон>
Офлайн
22
# coding: cp1251 contacts_dict = {} idi = 1 while True: value = raw_input('Фамилия Имя Отчество Телефон\n') if len(value): contacts_dict[idi] = value else: break idi += 1 contacts_list = [contacts_dict[i] for i in contacts_dict.keys()] contacts_list.sort(key = lambda x: x[0]) for i in contacts_list: print ' '.join(i)
Отредактировано ilnur (Дек. 4, 2012 18:50:41)
Офлайн
568
Ильнур,
contacts_list = [contacts_dict[i] for i in contacts_dict.keys()]
contacts_list = contacts_dict.values()
# -*- coding:utf-8 -*- contacts_dict = {} def inputs(): while 1: fio = raw_input('Фамилия Имя Отчество\n') if not fio: return phone = raw_input('Телефон\n') yield fio, phone for fio, phone in inputs(): contacts_dict.update({fio:phone}) for fio, phone in sorted(contacts_dict.items(), key=lambda x: x[0]): print fio, '===>', phone
Офлайн
22
FishHook
словарь тут в скрипте по заданию. в первом посте написано сформировать словарь.
ну а далее мне легче список заюзать для сортировки и вывода на печать.
за
contacts_list = contacts_dict.values()
Офлайн
568
ilnur
словарь тут в скрипте по заданию
состоящий из ФИО некоторого лица и номера его телефонаЯ так понял, имелось в виду {ФИО:Телефон}
Офлайн
Думаю, ФИО в качестве ключа это не самое хорошее решение, ФИО не уникально.
Офлайн