if - elif - else: ветвление и разница с несколькими независимыми if
less_05__if_elif_else__match_case/theory_01__if_elif_case.md
Базовый синтаксис if-elif-else с пояснением, что срабатывает ровно один блок — проверка идёт сверху вниз до первого истинного условия. Ключевой контраст файла: несколько отдельных независимых if друг от друга не зависят и могут сработать все сразу, в отличие от цепочки elif, где сработает только один. В конце — напоминание, что if/elif/else — ключевые слова и не могут быть именами переменных.
- if x > 15: / elif x > 5: / else: — срабатывает только один блок
- Несколько отдельных if — могут сработать все сразу
- elif необязателен и может повторяться много раз
- if/elif/else — зарезервированные ключевые слова
Показать начало файла (93 строк всего)
## Конструкция `if - elif - else`
В Python конструкция `if - elif - else` используется для ветвления кода.
То есть определяет выполнения разных блоков в зависимости от условий.
Отсюда и название - **условные операторы** (*condition statement*)
Базовый синтаксис:
```python
if условие1:
# Блок кода, если условие1 истинно
elif условие2:
# Блок кода, если условие1 ложно, но условие2 истинно
elif условие3:
# Блок кода, если выше все ложные, но условие3 истинно
else:
# Блок кода, если все условия выше ложные
```
### Пример:
```python
x = 10
if x > 15:
print("x больше 15")
elif x > 5:
print("x больше 5, но не больше 15")
else:
print("x меньше или равно 5")
# результат ВСЕГДА будет ТОЛЬКО один!
#
# В данном случае:
# x больше 5, но не больше 15
```
### Особенности:
1. `elif` можно использовать несколько раз или не использовать совсем;
2. Для нескольких `elif`:
1. Проверка идёт сверху вниз,
2. выполняется первый блок, условие которого истинно.
3. Остальные блоки игнорируются.
3. В `else` попадает всё, что не выполнилось выше (необязательный оператор!)
4. Условия могут быть любыми объектами, которые возвращают `True` или `False`.
В Python можно использовать несколько отдельных `if`, и они НЕ ЗАВИСЯТ друг от друга.
* `if - elif - else`,
* срабатывает ТОЛЬКО ОДИН блок
* несколько независимых `if`
* могут сработать все, если их условия истинны.
## Несколько отдельных блоков `if`:
Предыдущий пример мы можем записать с помощью нескольких `if`:
…