98
Глава 3. Наполнение Python: списки, кортежи, словари и множества
Наконец, создадим словарь из списков. В этом примере используем название
группы комиков в качестве ключа, а список ее членов — в качестве значения:
dict_of_lists = {'Marxes': marxes, 'Pythons': pythons, 'Stooges': stooges}
>> dict_of_lists
{'Stooges': ['Moe', 'Curly', 'Larry'],
'Marxes': ['Groucho', 'Chico', 'Harpo'],
'Pythons': ['Chapman', 'Cleese', 'Gilliam', 'Jones', 'Palin']}
Вас ограничивают только сами типы данных. Например, ключи словаря долж-
ны быть неизменяемыми, поэтому список, словарь или множество не могут быть
ключом для другого словаря. Но кортеж может быть ключом. Например, вы може-
те создать алфавитный указатель достопримечательностей, основываясь на GPS-
координатах (широте, долготе и высоте; обратитесь к разделу «Карты» приложе-
ния Б, где вы сможете найти еще несколько примеров работы с картами):
>>> houses = {
(44.79, -93.14, 285): 'My House',
(38.89, -77.03, 13): 'The White House'
}
Упражнения
В этой главе вы познакомились с более сложными структурами данных: списками,
кортежами, словарями и множествами. Используя их и типы данных, описанные
в главе 2 (числа и строки), вы можете представить множество элементов реально-
го мира.
1. Создайте список years_list, содержащий год, в который вы родились, и каждый
последующий год вплоть до вашего пятого дня рождения. Например, если вы
родились в 1980 году, список будет выглядеть так: years_list = [1980, 1981,
1982, 1983, 1984, 1985].
Если вам меньше пяти лет и вы уже читаете эту книгу, то я даже не знаю, что
сказать.
2. В какой из годов, содержащихся в списке years_list, был ваш третий день рож-
дения? Помните, в первый год вам было 0 лет.
3. В какой из годов, перечисленных в списке years_list, вам было больше всего лет?
4. Создайте список things, содержащий три элемента: "mozzarella", "cinderella",
"salmonella".
5. Напишите с большой буквы тот элемент списка things, который относится
к человеку, а затем выведите список. Изменился ли элемент списка?
6. Переведите сырный элемент списка things в верхний регистр целиком и выве-
дите список.
Упражнения
99
7. Удалите болезнь из списка things, получите Нобелевскую премию и затем вы-
ведите список на экран.
8. Создайте список, который называется surprise и содержит элементы 'Groucho',
'Chico' и 'Harpo'.
9. Напишите последний элемент списка surprise со строчной буквы, затем обра-
тите его и напишите с прописной буквы.
10. Создайте англо-французский словарь, который называется e2f, и выведите его
на экран. Вот ваши первые слова: dog/chien, cat/chat и walrus/morse.