13 правил синтаксиса языка Питон (Python). С примерами

Питон (Python) является одним из простейших в освоении, но мощнейшим по своему функционалу языком программирования. Мало какой язык может сравниться с ним в этом. Об этом я также писал здесь ==>>.

Когда мне нужно было заняться парсингом сайтов, насмотревшись на примеры того, как с этим прекрасно справляется Питон, подумал: какой простой язык, совсем как бейсик! И решил его попробовать.

Имея практический опыт работы со многими языками программирования, не парился с чтением матчасти: уж с бейсико-подобным языком разберусь и без этого!

Но не пошло. На ровном месте. Пришлось разбираться. Оказалось — все дело в отступах в коде.

Потом я оценил, насколько это — мощная штука!

Итак, кончаем с лирикой. Рассказываю по порядку про

Синтаксис языка Питон (Python)

Вот некоторые синтаксические правила для написания кода на Python:

Инструкции

  • Инструкции (операторы или выражения) в Python располагаются на отдельных строках. Нет необходимости использовать точку с запятой в конце. Обычно придерживаются правила: одна строка — одна инструкция.

Расширение 1

  • Можно разместить в строке несколько инструкций, с обязательным разделителем «точка с запятой» между ними:
x = 5; y = 10; z = x + y

Расширение 2

  • Инструкцию можно разместить в нескольких строках. Обычно это — выражение или длинный перечень аргументов в функциях (и вызовах функций). Такой список обрамляется скобками (круглыми, фигурными или квадратными).
def CIL(layer, filters,
    in_layer = False,
    out_layer = False,
    kernel_size = (4,4),
    strides = (2,2),
    padding = 'same'):

Переменные

  • Обозначения переменных в Python могут состоять из букв (как верхнего, так и нижнего регистра), цифр и символа подчеркивания. Однако не могут начинаться с цифры.
  • Python чувствителен к регистру. Это означает, что переменные с именами ‘myVar’ и ‘myvar’ считаются разными.
  • Ключевые слова Python (например, if, for, while, def и т. д.) не могут использоваться в качестве имен переменных.
  • В Python используется динамическая типизация, поэтому не требуется объявлять в явном виде тип данных для переменных.

Блоки кода

  • Блоки кода в Python определяются с помощью отступов (обычно используется четыре пробела или одна табуляция). Отступы должны быть одинаковыми в пределах одного блока. Допускаются вложенные блоки. Фигурные скобки для определения блоков кода не нужны.

Примеры см. в конце статьи.

  • Двоеточие (:) обозначает начало блока кода. Используется:

В операторах цикла:

for j in range(n):
    # код цикла
В условиях:
if x < 0:
    # код, выполняющийся при истинности условия
elif :
    # код, выполняющийся при ложности условия

Более сложный, вложенный вариант условия:

if x < 0:
    print("Число отрицательное")
else:
    if x > 100:
        print("Число больше 100")
    elif x > 10:
        print("Число от 11 до 100")
    elif x > 0:
        print("Число от 1 и до 10")
    else:
        print("Число равно нулю")

В определении функции или класса:

def my_function():
    # код функции
class MyClass:
    # код класса
  • Конец блока кода никак не обозначается.

Комментарии и строки

  • Невыполняемые участки кода (комментарии) в Python начинаются с символа #, который действует до конца строки. Комментарии нужны для пояснения и самодокументирования кода.
  • Комментарии на нескольких строках подряд можно обрамить тройными апострофами (”’) в начале и конце.
  • Строки (как значения переменных) в Python заключаются в одинарные (”) или двойные (“”) кавычки. Оба варианта являются равнозначными и могут использоваться совместно.

Прочее

В Python оператор присваивания представлен символом =. Оператор логического сравнения равенства представлен двумя символами «равно» ==.

Это лишь основные синтаксические правила Python, которые помогут вам начать писать и понимать код на Питоне. Синтаксис языка Питон содержит и другие конструкции и правила. Они могут быть использованы в более сложных сценариях и к простоте Питона добавляют неожиданную мощь.

Пример отступов для блоков кода на Python и JavaScript

Ниже представлен фрагмент кода на Питоне, распечатывающий список названий всех заданных ранее городов в формате:

Страна Провинция Город

for country in countries:
    for province in provincies:
        for city in cities:
            print(country, province, city)

Фактически, здесь 3 блока кода. Правда, в каждом только по одной строке. Зато видна вложенность блоков.

А здесь тот же самый код, но написанный на языке Java:

for (String country : countries) {
    for (String province : provincies) {
        for (String city : cities) {
            System.out.printin(country + " " + province + " " + city);
        }
    }
 ) 

Вы не находите, что скобок уж слишком много? И как легко ошибиться в их правильной расстановке и вложенности! При нарушении правила отступа (выравнивания) блоков может быть нарушена логика выполнения кода.

Легко показать и более сложные примеры кода на Питоне, показывающие его силу. Но как-нибудь в другой раз.

Анекдот напоследок

— Why do Python programmers prefer using snakes?
— Because they don’t like brackets.

——————————————————————————————

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

Также может быть интересно: