Синтаксис языка Python
Синтаксис Конец строки является концом инструкции (точка с запятой не требуется). Вложенные инструкции объединяются в блоки по величине отступов. Отступ может быть любым, главное, чтобы в пределах одного вложенного блока отступ был одинаков. И про читаемость кода не забывайте. Отступ в 1 пробел, к примеру, не лучшее решение. Используйте 4 пробела (или знак табуляции, на худой конец). Вложенные инструкции в Python записываются в соответствии с одним и тем же шаблоном, когда основная инструкция завершается двоеточием, вслед за которым располагается вложенный блок кода, обычно с отступом под строкой основной инструкции. Основная инструкция: Вложенный блок инструкций
Несколько специальных случаев Иногда возможно записать несколько инструкций в одной строке, разделяя их точкой с запятой: a = 1; b = 2; print(a, b)
Но не делайте это слишком часто! Помните об удобочитаемости. А лучше вообще так не делайте. Допустимо записывать одну инструкцию в нескольких строках. Достаточно ее заключить в пару круглых, квадратных или фигурных скобок: if (a == 1 and b == 2 and c == 3 and d == 4): # Не забываем про двоеточие print('spam' * 3) Тело составной инструкции может располагаться в той же строке, что и тело основной, если тело составной инструкции не содержит составных инструкций. Ну я думаю, вы поняли :). Давайте лучше пример приведу: if x > y: print(x)
Циклы for и while, операторы break и continue, волшебное слово else В этой статье я расскажу о циклах for и while, операторах break и continue, а также о слове else, которое, будучи употребленное с циклом, может сделать программный код несколько более понятным.
Цикл while
While - один из самых универсальных циклов в Python, поэтому довольно медленный. Выполняет тело цикла до тех пор, пока условие цикла истинно.
>> >>> i = 5
>>> while i < 15:
... print(i)
... i = i + 2
...
5
7
9
11
13
Цикл for
Цикл for уже чуточку сложнее, чуть менее универсальный, но выполняется гораздо быстрее цикла while. Этот цикл проходится по любому итерируемому объекту (например строке или списку), и во время каждого прохода выполняет тело цикла.
>> >>> for i in 'hello world':
... print(i * 2, end='')
...
hheelllloo wwoorrlldd
Оператор continue
Оператор continue начинает следующий проход цикла, минуя оставшееся тело цикла (for или while)
>> >>> for i in 'hello world':
... if i == 'o':
... continue
... print(i * 2, end='')
...
hheellll wwrrlldd
Оператор break
Оператор break досрочно прерывает цикл.
>> >>> for i in 'hello world':
... if i == 'o':
... break
... print(i * 2, end='')
...
hheellll
Волшебное слово else
Слово else, примененное в цикле for или while, проверяет, был ли произведен выход из цикла инструкцией break, или же "естественным" образом. Блок инструкций внутри else выполнится только в том случае, если выход из цикла произошел без помощи break.
>> >>> for i in 'hello world':
... if i == 'a':
... break
... else:
... print('Буквы a в строке нет')
...
Буквы a в строке нет
Инструкция if-elif-else, проверка истинности, трехместное выражение if/else Условная инструкция if-elif-else (её ещё иногда называют оператором ветвления) - основной инструмент выбора в Python. Проще говоря, она выбирает, какое действие следует выполнить, в зависимости от значения переменных в момент проверки условия.
Синтаксис инструкции if
Сначала записывается часть if с условным выражением, далее могут следовать одна или более необязательных частей elif, и, наконец, необязательная часть else. Общая форма записи условной инструкции if выглядит следующим образом:
if test1:
state1
elif test2:
state2
else:
state3
Простой пример (напечатает 'true', так как 1 - истина):
>>> if 1:
... print('true')
... else:
... print('false')
...
true
Чуть более сложный пример (его результат будет зависеть от того, что ввёл пользователь):
a = int(input())
if a < -5:
print('Low')
elif -5 <= a <= 5:
print('Mid')
else:
print('High')
Конструкция с несколькими elif может также служить отличной заменой конструкции switch - case в других языках программирования.
Проверка истинности в Python Любое число, не равное 0, или непустой объект - истина. Числа, равные 0, пустые объекты и значение None - ложь Операции сравнения применяются к структурам данных рекурсивно Операции сравнения возвращают True или False Логические операторы and и or возвращают истинный или ложный объект-операнд Логические операторы:
X and Y
Истина, если оба значения X и Y истинны.
X or Y
Истина, если хотя бы одно из значений X или Y истинно.
not X
Истина, если X ложно.
Трехместное выражение if/else
Следующая инструкция:
if X:
A = Y
else:
A = Z
довольно короткая, но, тем не менее, занимает целых 4 строки. Специально для таких случаев и было придумано выражение if/else:
A = Y if X else Z
В данной инструкции интерпретатор выполнит выражение Y, если X истинно, в противном случае выполнится выражение Z.
>> >>> A = 't' if 'spam' else 'f'
>>> A
't' перейти в каталог файлов
|