80
Глава 4 •
Работа со списками
4.11. Моя пицца, твоя пицца:
начните с программы из упражнения 4.1. Создайте копию
списка
с видами пиццы,
присвойте ему имя
friend_pizzas
. Затем сделайте следующее:
• Добавьте новую пиццу в исходный список.
• Добавьте
другую пиццу в список
friend_pizzas
.
•
Докажите, что в программе существуют два разных списка.
Выведите сообщение
«My favorite pizzas are:», а затем первый список в цикле
for
. Выведите сообщение
«My friend’s favorite pizzas are:», а затем второй список в цикле for. Убедитесь в том,
что каждая новая пицца находится в соответствующем списке.
4.12. Больше циклов:
во всех версиях
foods .py
из этого раздела мы избегали использования
цикла for при выводе для экономии места. Выберите версию
foods .py
и напишите два цик-
ла
for
для вывода каждого списка.
Кортежи
Списки хорошо подходят для хранения наборов элементов, которые могут из-
меняться на протяжении жизненного цикла программы. Например, возможность
модификации списков жизненно необходима при работе со списками пользовате-
лей сайта или списками персонажей игры. Однако в некоторых ситуациях требу-
ется создать список элементов, который не может изменяться.
Кортежи
(tuples)
предоставляют именно такую возможность. В языке Python значения, которые
не могут изменяться, называются
неизменяемыми
(immutable), а неизменяемый
список
называется
кортежем
.
Определение кортежа
Кортеж выглядит как список, не считая того, что вместо квадратных скобок ис-
пользуются круглые скобки. После определения кортежа вы можете обращаться
к его отдельным элементам по индексам точно так же, как это делается при работе
со списком.
Допустим, имеется прямоугольник, который в программе всегда должен иметь
строго определенные размеры. Чтобы гарантировать неизменность размеров, мож-
но объединить размеры в кортеж:
dimensions.py
❶
dimensions = (200, 50)
❷
print(dimensions[0])
print(dimensions[1])
В точке
определяется кортеж
dimensions
, при этом вместо квадратных скобок
используются круглые. В точке
каждый элемент кортежа выводится по отдельно-
сти с использованием того же синтаксиса, который использовался для обращения
к элементу списка:
200
50