Шаг 3.
Основы языка Python.
Структура программы

    На этом шаге мы рассмотрим структуру программы.

    Программа на языке Python представляет собой обычный текстовый файл с инструкциями. Каждая инструкция располагается на отдельной строке. Если инструкция не является вложенной, то она должна начинаться с начала строки, иначе будет выведено сообщение об ошибке (рисунок 1).


Рис.1. Сообщение об ошибке

    В этом случае перед инструкцией import расположен один лишний пробел, который привел к выводу сообщения об ошибке.

    Во первой строке файла желательно указать кодировку. Если кодировка не указана, то предполагается, что файл сохранен в кодировке UTF-8. Для кодировки Windows-1251 строка будет выглядеть так:

# -*- coding: ср1251 -*-

    Редактор IDLE учитывает указанную кодировку и автоматически производит перекодирование при сохранении файла. Получить полный список поддерживаемых кодировок и их псевдонимы позволяет код, приведенный ниже:

# -*- coding: utf-8 -*-
import encodings.aliases
arr = encodings.aliases.aliases
keys = list(arr.keys())
keys.sort()
for key in keys:
    print("%s => %s" % (key, arr[key]))


Рис.2. Список кодировок

Файл с примером можно взять здесь.

    Во многих языках программирования (например, в PHP, Perl и др.) каждая инструкция должна завершаться точкой с запятой. В языке Python в конце инструкции также можно поставить точку с запятой, но это не обязательно. Более того, в отличие от языка JavaScript, где рекомендуется завершать инструкции точкой с запятой, в языке Python точку с запятой ставить не рекомендуется. Концом инструкции является конец строки. Тем не менее, если необходимо разместить несколько инструкций на одной строке, точку с запятой следует указать:

>>> х = 5; y = 10; z = х  +  y  # Три инструкции  на одной строке
>>> print(z)
15

    Еще одной отличительной особенностью языка Python является отсутствие ограничительных символов для выделения инструкций внутри блока. Например, в языке РНР инструкции внутри цикла while выделяются фигурными скобками:

$i=1;
while ($i < 11) {
  echo  $i . "\n";
  $i++;
}
echo "Конец программы";    

    В языке Python тот же код будет выглядеть по-другому:

i = 1
while i < 11:
    print(i)
    i += 1
print("Конец программы")

    Обратите внимание, что перед всеми инструкциями внутри блока расположено одинаковое количество пробелов. Именно так в языке Python выделяются блоки. Инструкции, перед которыми расположено одинаковое количество пробелов, являются телом блока. В нашем примере две инструкции выполняются десять раз. Концом блока является инструкция, перед которой расположено меньшее количество пробелов. В нашем случае это функция print (), которая выводит строку "Конец программы". Если количество пробелов внутри блока окажется разным, то интерпретатор выведет сообщение о фатальной ошибке, и программа будет остановлена.


   Примечание. В языке Python принято использовать четыре пробела для выделения инструкций внутри блока.

    Если блок состоит из одной инструкции, то допустимо разместить ее на одной строке с основной инструкцией. Например, код:

for i in range (1, 11):
    print(i)
print ("Конец программы")
можно записать так:
for i in range (1, 11): print(i) 
print("Конец программы")

    Если инструкция является слишком длинной, то ее можно перенести на следующую строку, например так:

    На следующем шаге мы рассмотрим комментарии.




Предыдущий шаг Содержание Следующий шаг