УПРАЖНЕНИЯ
6-7 . Люди: начните с программы, написанной для упражнения 6-1 (с . 107) . Создайте два
новых словаря, представляющих разных людей, и сохраните все три словаря в списке
с именем
people
. Переберите элементы списка людей . В процессе перебора выведите всю
имеющуюся информацию о каждом человеке .
6-8 . Домашние животные: создайте несколько словарей, имена которых представляют
клички домашних животных . В каждом словаре сохраните информацию о виде животно-
го и имени владельца . Сохраните словари в списке с именем pets . Переберите элементы
списка . В процессе перебора выведите всю имеющуюся информацию о каждом животном .
6-9 . Любимые места: создайте словарь с именем favorite_places . Придумайте названия трех
мест, которые станут ключами словаря, и сохраните для каждого человека от одного до
трех любимых мест . Чтобы задача стала более интересной, опросите нескольких друзей
и соберите реальные данные для своей программы . Переберите данные в словаре, выведи-
те имя каждого человека и его любимые места .
6-10 . Любимые числа: измените программу из упражнения 6-2 (с . 107), чтобы для каждого
человека можно было хранить более одного любимого числа . Выведите имя каждого чело-
века в списке и его любимые числа .
6-11 . Города: создайте словарь с именем cities . Используйте названия трех городов в каче-
стве ключей словаря . Создайте словарь с информацией о каждом городе; включите в него
страну, в которой расположен город, примерную численность населения и один примеча-
тельный факт, относящийся к этому городу . Ключи словаря каждого города должны на-
зываться country, population и fact . Выведите название каждого города и всю сохраненную
информацию о нем .
6-12 . Расширение: примеры, с которыми мы работаем, стали достаточно сложными, и в них
можно вносить разного рода усовершенствования . Воспользуйтесь одним из примеров этой
главы и расширьте его: добавьте новые ключи и значения, измените контекст программы
или улучшите форматирование вывода .
Итоги
В этой главе вы научились определять словари и работать с хранящейся в них
информацией. Вы узнали, как обращаться к отдельным элементам словаря и из-
менять их, как перебрать всю информацию в словаре. Вы научились перебирать
пары «ключ—значение», ключи и значения словаря. Также были рассмотрены воз-
можности вложения словарей в список, вложения списков в словари и вложения
словарей в другие словари.
В следующей главе будут рассмотрены циклы
while
и получение входных данных
от пользователей программ. Эта глава будет особенно интересной, потому что вы
наконец-то сможете сделать свои программы интерактивными: они начнут реаги-
ровать на действия пользователя.
7
Ввод данных и циклы while
Программы, как правило, пишутся для решения задач конечного пользователя. Для
этого им обычно нужна некоторая информация, которую должен ввести пользо-
ватель. Простой пример: допустим, пользователь хочет узнать, достаточен ли его
возраст для голосования. Если вы пишете программу для ответа на этот вопрос, то
вам нужно будет узнать возраст пользователя. Программа должна запросить у поль-
зователя значение — его возраст; когда у программы появятся данные, она может
сравнить их с возрастом, дающим право на голосование, и сообщить результат.
В этой главе вы узнаете, как получить пользовательский ввод (то есть входные
данные), чтобы программа могла работать с ним. Например, таким вводом может
быть отдельное имя или список имен. Для получения данных в программах ис-
пользуется функция
input()
.
Вы также научитесь продолжать работу программы, пока пользователь вводит
новые данные; после получения всех данных программа переходит к работе с полу-
ченной информацией. Цикл
while
в языке Python позволяет выполнять программу,
пока некоторое условие остается истинным.
Когда вы научитесь работать с пользовательским вводом и управлять продолжи-
тельностью выполнения программы, вы сможете создавать полностью интерак-
тивные программы.
Как работает функция input()
Функция
input()
приостанавливает выполнение программы и ожидает, пока
пользователь введет некоторый текст. Получив ввод, Python сохраняет его в пере-
менной, чтобы вам было удобнее работать с ним.
Например, следующая программа предлагает пользователю ввести текст, а затем
выводит сообщение для пользователя:
parrot.py
message = input("Tell me something, and I will repeat it back to you: ")
print(message)
Функция
input()
получает один аргумент: текст подсказки (или инструкции),
который выводится на экран, чтобы пользователь понимал, что от него требуется.
В данном примере при выполнении первой строки пользователь видит подсказку
с предложением ввести любой текст. Программа ожидает, пока пользователь введет
Как работает функция input() 121
ответ, и продолжает работу после нажатия
Enter
. Ответ сохраняется в переменной
message
, после чего вызов
print(message)
дублирует введенные данные:
Tell me something, and I will repeat it back to you: Hello everyone!
Hello everyone!
Достарыңызбен бөлісу: |