Theory and Tasks for Students - Spring 2019
Условный оператор IF

Допустим, стоит простая задача - для значений X < 0 вывести значения одной функции, а для X >= 0 - другой. В таком случае одними математическими операциями не обойтись и для этого в Питоне существует оператор ветвления IF, имеющий следующий синтаксис: if (logical_expression) : # блок кода А else : # блок кода Б Из названия ключевых слов IF и ELSE можно догадаться, как он работает: Если логическое выражение logical_expression (не обязательно одна переменная) возвращает значение True (истина), выполняется блок кода А. В противном случае - т.е. если значение выражение равно False (ложь), выполняется блок кода Б.

Если блок кода Б должен быть пустым, else можно просто опустить: if (logical_expression) : # блок кода А

Если создания цепочки проверок используется оператор ELIF, представляющий собой комбинацию ELSE и IF: if (logical_expression_1) : # блок кода А elif (logical_expression_2) : # блок кода B elif (logical_expression_3) : # блок кода C else : # блок кода D Это же можно записать по-другому, однако такая запись будет более громоздкая: if (logical_expression_1) : # блок кода А else : if (logical_expression_2) : # блок кода B else : if (logical_expression_3) : # блок кода C else : # блок кода D Не забывайте про отступы блоков и знак `:` перед ними.

Для составления логических выражений используются следыющие операции:

==, <, <=, >, >=, != Сравнение: равенство (не путать с оператором присваивания =), меньше, меньше или равно, больше, больше или равно, не равно
and, or, not Операторы И (AND), ИЛИ (OR), отрицание (NOT)

Следующий код проверяет число на чётность и выводит соответствующиую строку: n = int(input()); if (n % 2 == 0) : print("Even"); else : print("Odd");

Строки в Питоне можно не только выводить, считывать и конвертировать в числа. Например, для более "красивого" вывода данных можно написать: print("X = " + str(x)); Складывать строки можно только с другими строками - такая операция называется конкатенацией. Для конвертирования числа и практически любого объекта в строку используется функция str().

Строки так же поддерживают оператор индексирования [], т.е. из строки можно изъять подстроку любой длины. Это может сделать несколькими способами - предполагается, что в переменной str содержится какая-то строка - нумерация символов в строке идёт от 0:

  • str[i] - подстрока с символа с индексом i до символа с индексом i, т.е. i-ый символ
  • str[a:] - подстрока с символа с индексом a до конца строки
  • str[a:b] - подстрока с символа с индексом a до символа с индексом b-1
  • str[:b] - подстрока с начала строки до символа с индексом b-1

Индексы могут быть отрицательными - тогда отсчёт идёт с конца строки. Для получения длины строки используется функция len().