Простой Python. Современный стиль программирования (Любанович) - страница 6

Рассмотрим еще один пример. Вы сразу поймете его предназначение, хотя и не сразу сможете определить результат:

>½ столовой ложки масла или маргарина;

>½ столовой ложки сливок;

>2 ½ стакана муки;

>1 чайная ложка соли;

>1 чайная ложка сахара;

>4 стакана картофельного пюре (охлажденного).

>Перед тем как добавить муку, убедитесь, что все ингредиенты охлаждены.

>Смешайте все ингредиенты.

>Тщательно замесите.

>Сделайте 20 шариков. Держите их охлажденными до следующего этапа.

>Для каждого шарика разровняйте муку на тряпочке.

>Раскатайте шарик при помощи рифленой скалки.

>Жарьте на сковороде до подрумянивания.

>Переверните и обжарьте другую сторону.

Даже если вы не готовите, вы сможете распознать кулинарный рецепт: список продуктов, за которым следуют указания по приготовлению. Но что получится в итоге? Это лефсе, норвежский деликатес, который напоминает тортилью. Полейте блюдо маслом, вареньем или чем-нибудь еще, сверните и наслаждайтесь.

Схема для вязания и рецепт имеют несколько похожих моментов:

• фиксированный словарь, состоящий из слов, аббревиатур и символов. Некоторые могут быть знакомы, другие же покрыты тайной;

• правила, описывающие, что и где можно говорить, — синтаксис;

• последовательность операций, которые должны быть выполнены по порядку;

• в некоторых случаях — повторение определенных операций (цикл), например способ приготовления каждого кусочка лефсе;

• в некоторых случаях — ссылка на другую последовательность операций (говоря компьютерными терминами, функция). Например, когда вы прочтете приведенный выше рецепт, вам может понадобиться рецепт приготовления картофельного пюре;

• предполагаемое знание контекста. Рецепт подразумевает, что вы знаете, что такое вода и как ее кипятить. Схема для вязания подразумевает, что вы умеете держать спицы в руках;

• ожидаемый результат. В наших примерах результатом будет предмет для ног и предмет для желудка. Главное — не перепутать.

Все эти идеи вы можете встретить и в компьютерных программах. Я воспользовался этими «непрограммами», чтобы показать, что программы не так страшны, как может показаться. Нужно всего лишь выучить верные слова и правила.

Теперь оставим этих дублеров и рассмотрим настоящую программу. Что она делает?

>for countdown in 5, 4, 3, 2, 1, "hey!":

>····print(countdown)

Если вы считаете, что это программа, написанная на языке программирования Python, которая выводит на экран следующее:

>5

>4

>3

>2

>1

>hey!

то вы знаете, что язык программирования Python выучить проще, чем понять рецепт или схему для вязания. К тому же вы можете тренироваться писать на языке программирования Python, сидя за удобным и безопасным столом, избегая опасностей вроде горячей воды и спиц.