HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-21
1 <p><a>#статьи</a></p>
1 <p><a>#статьи</a></p>
2 <ul><li>10 июн 2024</li>
2 <ul><li>10 июн 2024</li>
3 <li>0</li>
3 <li>0</li>
4 </ul><p>Крутим логические вентили и учим программу принимать решения.</p>
4 </ul><p>Крутим логические вентили и учим программу принимать решения.</p>
5 <p>Иллюстрация: Google DeepMind / Unsplash / Colowgee для Skillbox Media</p>
5 <p>Иллюстрация: Google DeepMind / Unsplash / Colowgee для Skillbox Media</p>
6 <p>Пишет про digital и машинное обучение для корпоративных блогов. Топ-автор в категории "Искусственный интеллект" на Medium. Kaggle-эксперт.</p>
6 <p>Пишет про digital и машинное обучение для корпоративных блогов. Топ-автор в категории "Искусственный интеллект" на Medium. Kaggle-эксперт.</p>
7 <p>Компьютерные программы тоже принимают решения на основе условий. В Python для этого есть условные операторы if, elif и else. Рассказываем, как они работают, для чего нужны и можно ли обойтись без них.</p>
7 <p>Компьютерные программы тоже принимают решения на основе условий. В Python для этого есть условные операторы if, elif и else. Рассказываем, как они работают, для чего нужны и можно ли обойтись без них.</p>
8 <p><strong>Содержание</strong></p>
8 <p><strong>Содержание</strong></p>
9 <ul><li><a>Что делают условные операторы в Python</a></li>
9 <ul><li><a>Что делают условные операторы в Python</a></li>
10 <li><a>Оператор if</a></li>
10 <li><a>Оператор if</a></li>
11 <li><a>Оператор if-else</a></li>
11 <li><a>Оператор if-else</a></li>
12 <li><a>Оператор if-elif-else</a></li>
12 <li><a>Оператор if-elif-else</a></li>
13 <li><a>Логические операторы в условиях</a></li>
13 <li><a>Логические операторы в условиях</a></li>
14 </ul><p><strong>ЭКСПЕРТ</strong></p>
14 </ul><p><strong>ЭКСПЕРТ</strong></p>
15 <p>Эксперт Skillbox по компьютерным сетям и кибербезопасности. Автор телеграм-канала "<a>Кудрявый микрофон</a>".</p>
15 <p>Эксперт Skillbox по компьютерным сетям и кибербезопасности. Автор телеграм-канала "<a>Кудрявый микрофон</a>".</p>
16 <p>Условные операторы в Python используют для разработки программ, которые учитывают разные условия и на их основе выполняют определённые действия. Чаще всего их используют для следующих задач:</p>
16 <p>Условные операторы в Python используют для разработки программ, которые учитывают разные условия и на их основе выполняют определённые действия. Чаще всего их используют для следующих задач:</p>
17 <ul><li><strong>Принятие решений.</strong>Позволяют программе выбирать между различными путями выполнения. Например, отправить пользователю письмо на почту или сообщение в мессенджере.</li>
17 <ul><li><strong>Принятие решений.</strong>Позволяют программе выбирать между различными путями выполнения. Например, отправить пользователю письмо на почту или сообщение в мессенджере.</li>
18 <li><strong>Контроль потока выполнения.</strong>Условные операторы управляют тем, какие части кода будут выполнены, а какие проигнорированы.</li>
18 <li><strong>Контроль потока выполнения.</strong>Условные операторы управляют тем, какие части кода будут выполнены, а какие проигнорированы.</li>
19 <li><strong>Оптимизация кода.</strong>Позволяют избегать выполнения ненужных операций, что улучшает производительность. Действия в программе выполняются последовательно, но иногда некоторые операции надо пропустить.</li>
19 <li><strong>Оптимизация кода.</strong>Позволяют избегать выполнения ненужных операций, что улучшает производительность. Действия в программе выполняются последовательно, но иногда некоторые операции надо пропустить.</li>
20 <li><strong>Обработка ошибок.</strong>Условные операторы помогают обнаруживать и реагировать на ошибки или нестандартные ситуации. С помощью условных операторов можно описать, как программе реагировать на возникающие в коде ошибки.</li>
20 <li><strong>Обработка ошибок.</strong>Условные операторы помогают обнаруживать и реагировать на ошибки или нестандартные ситуации. С помощью условных операторов можно описать, как программе реагировать на возникающие в коде ошибки.</li>
21 </ul><p>Конструкцию if используют, чтобы добавить одно условие в код. Содержимое такого блока будет выполняться только в том случае, если условие истинно и принимает значение True. В остальных случаях программа будет пропускать содержимое блока.</p>
21 </ul><p>Конструкцию if используют, чтобы добавить одно условие в код. Содержимое такого блока будет выполняться только в том случае, если условие истинно и принимает значение True. В остальных случаях программа будет пропускать содержимое блока.</p>
22 <p>Для создания условия используют оператор if. Затем следует само условие, а после идёт двоеточие и с новой строки с отступом начинается код. Если не соблюсти правила форматирования, то программа не будет работать:</p>
22 <p>Для создания условия используют оператор if. Затем следует само условие, а после идёт двоеточие и с новой строки с отступом начинается код. Если не соблюсти правила форматирования, то программа не будет работать:</p>
23 if условие: блок кода, который выполняется, если условие = True следующий блок кода<p>В примере ниже если переменная x больше пяти, Python выведет в консоль сообщение x больше 5. В остальных случаях код внутри блока if не будет выполняться и пользователь не увидит сообщение:</p>
23 if условие: блок кода, который выполняется, если условие = True следующий блок кода<p>В примере ниже если переменная x больше пяти, Python выведет в консоль сообщение x больше 5. В остальных случаях код внутри блока if не будет выполняться и пользователь не увидит сообщение:</p>
24 x = 10 if x &gt; 5: print('x больше 5')<p>Представим, что вы решили написать программу, которая посчитает, можете ли вы позволить себе булочку за 35 рублей в кафе. Для начала создадим переменную bun и запишем в неё стоимость булочки. Затем с помощью функции input узнаем, сколько денег есть у пользователя. Теперь в блоке if проверяем, хватает ли суммы на покупку булочки, если да, то сообщаем об этом:</p>
24 x = 10 if x &gt; 5: print('x больше 5')<p>Представим, что вы решили написать программу, которая посчитает, можете ли вы позволить себе булочку за 35 рублей в кафе. Для начала создадим переменную bun и запишем в неё стоимость булочки. Затем с помощью функции input узнаем, сколько денег есть у пользователя. Теперь в блоке if проверяем, хватает ли суммы на покупку булочки, если да, то сообщаем об этом:</p>
25 bun = 35 # Узнаем, сколько есть денег money = int(input("Сколько денег с собой?")) if money &gt;= 35: # Если денег больше 35 рублей, то вы можете купить выпечку print("Вы можете купить булку") # Примеры вывода: Сколько денег с собой? 40 Вы можете купить булку Сколько денег с собой? 20 # Если денег не хватает, программа ничего не выдаёт<p>Конструкция if-else позволяет выполнять два блока кода: для истинного и ложного условий. Это позволяет управлять поведением программы в зависимости от входных данных и состояний.</p>
25 bun = 35 # Узнаем, сколько есть денег money = int(input("Сколько денег с собой?")) if money &gt;= 35: # Если денег больше 35 рублей, то вы можете купить выпечку print("Вы можете купить булку") # Примеры вывода: Сколько денег с собой? 40 Вы можете купить булку Сколько денег с собой? 20 # Если денег не хватает, программа ничего не выдаёт<p>Конструкция if-else позволяет выполнять два блока кода: для истинного и ложного условий. Это позволяет управлять поведением программы в зависимости от входных данных и состояний.</p>
26 <p>if описывает, что делать программе, если условие истинно, а else - если это условие ложно. После<em>else</em>нельзя указать другое условие: просто ставится двоеточие. Следующий блок кода начинается с отступа, как и в случае с if.</p>
26 <p>if описывает, что делать программе, если условие истинно, а else - если это условие ложно. После<em>else</em>нельзя указать другое условие: просто ставится двоеточие. Следующий блок кода начинается с отступа, как и в случае с if.</p>
27 <p>В общем виде конструкция if-else выглядит следующим образом:</p>
27 <p>В общем виде конструкция if-else выглядит следующим образом:</p>
28 if условие: Блок_кода_1 else: Блок_кода_2<p>Доработаем наш пример и добавим блок else. Он будет выводить сообщение, если переменная x меньше пяти:</p>
28 if условие: Блок_кода_1 else: Блок_кода_2<p>Доработаем наш пример и добавим блок else. Он будет выводить сообщение, если переменная x меньше пяти:</p>
29 x = 10 if x &gt; 5: # Если x больше 5, выводим, что больше print('x больше 5') else: # Если меньше, выводим, что меньше print('x меньше 5')<p>Мы предусмотрели, что делать программе в обоих случаях, а пользователь в любом случае увидит сообщение в консоли.</p>
29 x = 10 if x &gt; 5: # Если x больше 5, выводим, что больше print('x больше 5') else: # Если меньше, выводим, что меньше print('x меньше 5')<p>Мы предусмотрели, что делать программе в обоих случаях, а пользователь в любом случае увидит сообщение в консоли.</p>
30 <p>Для проверки условий внутри блоков if можно использовать вложенные условные операторы:</p>
30 <p>Для проверки условий внутри блоков if можно использовать вложенные условные операторы:</p>
31 x = 15 if x &gt; 10: print("x больше 10") if x &gt; 20: print("x больше 20") else: print("x больше 10, но меньше или равно 20") else: print("x меньше или равно 10")<p>Вернёмся к задаче с булочкой. Допустим, если у нас больше 50 рублей, то мы можем купить пирожок с картошкой. А если меньше, то только простую булочку:</p>
31 x = 15 if x &gt; 10: print("x больше 10") if x &gt; 20: print("x больше 20") else: print("x больше 10, но меньше или равно 20") else: print("x меньше или равно 10")<p>Вернёмся к задаче с булочкой. Допустим, если у нас больше 50 рублей, то мы можем купить пирожок с картошкой. А если меньше, то только простую булочку:</p>
32 bun = 35 pie = 50 money = int(input("Сколько денег с собой?")) if money &gt;= 50: # Блок кода 1 print("Вы можете купить пирожок с картошкой") else: # Блок кода 2 print("Вы не можете купить пирожок с картошкой. Купите булку.")<p>Когда условие после if оценивается как истинное, выполняется блок кода 1. В противном случае выполняется блок кода 2.</p>
32 bun = 35 pie = 50 money = int(input("Сколько денег с собой?")) if money &gt;= 50: # Блок кода 1 print("Вы можете купить пирожок с картошкой") else: # Блок кода 2 print("Вы не можете купить пирожок с картошкой. Купите булку.")<p>Когда условие после if оценивается как истинное, выполняется блок кода 1. В противном случае выполняется блок кода 2.</p>
33 <p>Это страшное словосочетание обозначает лишь, что условие if-else можно записать в одной строке. Тернарные операторы используют для сокращения кода в проекте и улучшения читаемости:</p>
33 <p>Это страшное словосочетание обозначает лишь, что условие if-else можно записать в одной строке. Тернарные операторы используют для сокращения кода в проекте и улучшения читаемости:</p>
34 x = 10 result = "x больше 5" if x &gt; 5 else "x не больше 5" print(result)<p>Конструкция if-elif-else используется для проверки нескольких условий и выполнения только подходящего кода:</p>
34 x = 10 result = "x больше 5" if x &gt; 5 else "x не больше 5" print(result)<p>Конструкция if-elif-else используется для проверки нескольких условий и выполнения только подходящего кода:</p>
35 <ul><li>if - проверяет первое условие.</li>
35 <ul><li>if - проверяет первое условие.</li>
36 <li>elif (сокращение от else if) - проверяет следующие условия, если предыдущее условие ложно.</li>
36 <li>elif (сокращение от else if) - проверяет следующие условия, если предыдущее условие ложно.</li>
37 <li>else - выполняет блок кода, если все предыдущие условия ложны.</li>
37 <li>else - выполняет блок кода, если все предыдущие условия ложны.</li>
38 </ul><p>В общем виде синтаксис конструкции if-elif-else выглядит следующим образом:</p>
38 </ul><p>В общем виде синтаксис конструкции if-elif-else выглядит следующим образом:</p>
39 if условие1: блок_кода1 elif условие2: блок_кода2 elif условие3: блок_кода3 else: блок_кодаN<p>Рассмотрим пример, в котором переменной x присваивается значение и с помощью оператора if-elif-else проверяется диапазон этого значения.</p>
39 if условие1: блок_кода1 elif условие2: блок_кода2 elif условие3: блок_кода3 else: блок_кодаN<p>Рассмотрим пример, в котором переменной x присваивается значение и с помощью оператора if-elif-else проверяется диапазон этого значения.</p>
40 x = 7 if x &gt; 10: print("x больше 10") elif x &gt; 5: print("x больше 5, но меньше или равно 10") elif x &gt; 0: print("x больше 0, но меньше или равно 5") else: print("x меньше или равно 0")<p>В данном примере результат будет: x больше 5, но меньше или равно 10, так как переменная x равна 7 и попадает в заданный диапазон.</p>
40 x = 7 if x &gt; 10: print("x больше 10") elif x &gt; 5: print("x больше 5, но меньше или равно 10") elif x &gt; 0: print("x больше 0, но меньше или равно 5") else: print("x меньше или равно 0")<p>В данном примере результат будет: x больше 5, но меньше или равно 10, так как переменная x равна 7 и попадает в заданный диапазон.</p>
41 <p>Рассмотрим пример, в котором проверяются различные состояния. Представим, что в пекарне в качестве бонуса к заказу детям дают бесплатный чай, а пенсионерам - морс. Нужно написать программу, которая на основе возраста определит, какой подарок может получить клиент.</p>
41 <p>Рассмотрим пример, в котором проверяются различные состояния. Представим, что в пекарне в качестве бонуса к заказу детям дают бесплатный чай, а пенсионерам - морс. Нужно написать программу, которая на основе возраста определит, какой подарок может получить клиент.</p>
42 age = int(input("Ваш возраст:")) if age &lt; 1: print("Введите корректный возраст.") elif age &lt; 18: print("Вы несовершеннолетний. Вам полагается чай.") elif age &gt; 65: print("Вы пенсионер. Вам полагается морс.") else: print("Спасибо за заказ!") # Примеры вывода: Ваш возраст: 17 Вы несовершеннолетний. Вам полагается чай. Ваш возраст: 67 Вы пенсионер. Вам полагается морс.<p>Для создания сложных условий можно использовать логические операторы: and, or и not.</p>
42 age = int(input("Ваш возраст:")) if age &lt; 1: print("Введите корректный возраст.") elif age &lt; 18: print("Вы несовершеннолетний. Вам полагается чай.") elif age &gt; 65: print("Вы пенсионер. Вам полагается морс.") else: print("Спасибо за заказ!") # Примеры вывода: Ваш возраст: 17 Вы несовершеннолетний. Вам полагается чай. Ваш возраст: 67 Вы пенсионер. Вам полагается морс.<p>Для создания сложных условий можно использовать логические операторы: and, or и not.</p>
43 <p>Логические операторы в программировании используют для выполнения операций с булевыми значениями (True или False).</p>
43 <p>Логические операторы в программировании используют для выполнения операций с булевыми значениями (True или False).</p>
44 <ul><li><strong>and (логическое И).</strong>Возвращает True, если оба условия истинны.</li>
44 <ul><li><strong>and (логическое И).</strong>Возвращает True, если оба условия истинны.</li>
45 </ul>True and True # Возвращает True True and False # Возвращает False False and True # Возвращает False False and False # Возвращает False<ul><li><strong>or (логическое ИЛИ).</strong>Возвращает True, если хотя бы одно из условий истинно.</li>
45 </ul>True and True # Возвращает True True and False # Возвращает False False and True # Возвращает False False and False # Возвращает False<ul><li><strong>or (логическое ИЛИ).</strong>Возвращает True, если хотя бы одно из условий истинно.</li>
46 </ul>True or True # Возвращает True True or False # Возвращает True False or True # Возвращает True False or False # Возвращает False<ul><li><strong>not</strong><strong>(логическое НЕ).</strong>Инвертирует значение условия (если условие истинно, возвращает False и наоборот).</li>
46 </ul>True or True # Возвращает True True or False # Возвращает True False or True # Возвращает True False or False # Возвращает False<ul><li><strong>not</strong><strong>(логическое НЕ).</strong>Инвертирует значение условия (если условие истинно, возвращает False и наоборот).</li>
47 </ul>not True # Возвращает False not False # Возвращает True<p>Рассмотрим на примере, как использовать логические операторы в условиях. В задаче ниже, чтобы код выполнялся, должны быть истинными сразу два условия:</p>
47 </ul>not True # Возвращает False not False # Возвращает True<p>Рассмотрим на примере, как использовать логические операторы в условиях. В задаче ниже, чтобы код выполнялся, должны быть истинными сразу два условия:</p>
48 x = 7 y = 8 if x &gt; 5 and y &gt; 5: print("x и y больше 5") if x &gt; 5 or y &gt; 10: print("x больше 5 или y больше 10") if not x &lt; 5: print("x не меньше 5")<ul><li>Условные операторы позволяют программе выбирать между разными вариантами событий. Так она может адаптироваться под разные условия задачи.</li>
48 x = 7 y = 8 if x &gt; 5 and y &gt; 5: print("x и y больше 5") if x &gt; 5 or y &gt; 10: print("x больше 5 или y больше 10") if not x &lt; 5: print("x не меньше 5")<ul><li>Условные операторы позволяют программе выбирать между разными вариантами событий. Так она может адаптироваться под разные условия задачи.</li>
49 <li>Условия управляют тем, какие части кода будут выполнены, а какие пропущены, обеспечивая более точное и эффективное выполнение программ.</li>
49 <li>Условия управляют тем, какие части кода будут выполнены, а какие пропущены, обеспечивая более точное и эффективное выполнение программ.</li>
50 <li>if позволяет добавить одно условие. Если оно истинно, то блок кода будет выполнен.</li>
50 <li>if позволяет добавить одно условие. Если оно истинно, то блок кода будет выполнен.</li>
51 <li>if-else позволяет добавить два условия. Блок if выполняется, если условие истинно, а блок else - если ложно.</li>
51 <li>if-else позволяет добавить два условия. Блок if выполняется, если условие истинно, а блок else - если ложно.</li>
52 <li>if-elif-else позволяет добавить сколько угодно условий. Тогда блоки if и elif выполняются, если условия истинны, а else ― если нет.</li>
52 <li>if-elif-else позволяет добавить сколько угодно условий. Тогда блоки if и elif выполняются, если условия истинны, а else ― если нет.</li>
53 <li>Можно использовать вложенные условные операторы, чтобы создавать более сложные логические конструкции.</li>
53 <li>Можно использовать вложенные условные операторы, чтобы создавать более сложные логические конструкции.</li>
54 <li>С помощью условий можно избежать выполнения ненужных операций.</li>
54 <li>С помощью условий можно избежать выполнения ненужных операций.</li>
55 </ul><p>Python для всех</p>
55 </ul><p>Python для всех</p>
56 <p>Вы освоите Python на практике и создадите проекты для портфолио - телеграм-бот, веб-парсер и сайт с нуля. А ещё получите готовый план выхода на удалёнку и фриланс. Спикер - руководитель отдела разработки в "Сбере".</p>
56 <p>Вы освоите Python на практике и создадите проекты для портфолио - телеграм-бот, веб-парсер и сайт с нуля. А ещё получите готовый план выхода на удалёнку и фриланс. Спикер - руководитель отдела разработки в "Сбере".</p>
57 <p><a>Пройти бесплатно</a></p>
57 <p><a>Пройти бесплатно</a></p>
58 <a><b>Бесплатный курс по разработке на Python ➞</b>Пройдите бесплатный курс по Python и создайте с нуля телеграм-бот, веб-парсер и сайт. Спикер - руководитель отдела разработки в "Сбере". Пройти курс</a>
58 <a><b>Бесплатный курс по разработке на Python ➞</b>Пройдите бесплатный курс по Python и создайте с нуля телеграм-бот, веб-парсер и сайт. Спикер - руководитель отдела разработки в "Сбере". Пройти курс</a>