Простой Python. Современный стиль программирования - страница 4

Шрифт
Интервал

стр.

Глава 1. Python: с чем его едят

Начнем с одной небольшой тайны и ее разгадки. Что, по-вашему, означают следующие две строки?

>(Ряд 1): (RS) K18, ssk, k1, turn work.

>(Ряд 2): (WS) Sl 1 pwise, p5, p2tog, p1, turn.

Выглядит как какая-то компьютерная программа. На самом деле это схема для вязания, а если точнее, фрагмент, который описывает, как связать пятку носка. Для меня эти строки имеют не больше смысла, чем кроссворд из газеты New York Times — для моего кота, но моя жена понимает их совершенно точно. Если вы вяжете, то тоже их поймете.

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

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

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

>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, сидя за удобным и безопасным столом, избегая опасностей вроде горячей воды и спиц.

Программа, написанная на языке программирования Python, содержит несколько специальных слов и символов: for, in, print, запятые, точки с запятой, скобки и т. д., — которые являются важной частью синтаксиса языка. Хорошая новость заключается в том, что язык программирования Python имеет более доступный и менее объемный синтаксис, чем большинство других языков программирования. Он кажется более понятным — почти как рецепт.

Вот еще одна небольшая программа, написанная на языке программирования Python, которая выбирает новостные клише из списка и выводит их на экран:

>cliches = [

>····"At the end of the day",

>····"Having said that",

>····"The fact of the matter is",

>····"Be that as it may",

>····"The bottom line is",

>····"If you will",

>····]

>print(cliches[3])

Эта программа выведет четвертое клише:

>Be that as it may

Списки — вроде cliches — представляют собой последовательность значений, доступ к которым осуществляется с использованием


стр.

Похожие книги