Булева логика в Python

Булева логика в Python, как и в других языках программирования нужна нам для того, чтобы наш код мог сравнивать данные.

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

Таких примеров сравнений много, и булева логика – крайне полезная штука в программировании.

Давайте узнаем из чего она состоит и какие примеры с ней можно создавать.

Операторы сравнения

Когда мы сравниваем числа друг с другом, мы обычно используем такие символы, как > (больше), < (меньше), = (равно) и так далее. Они работают и на Python. И вот как они выглядят там:

  1. Больше >
  2. Меньше <
  3. Равно ==
  4. Не равно !=
  5. Больше или равно > =
  6. Меньше или равно <=

Как Вы заметили, в Python вместо знака равенства = нам необходимо использовать двойной знак равенства ==.

Нам нужен двойной знак равенства для того, чтобы Python не подумал, что мы пытаемся создать переменную.

В Python эти символы называются операторами сравнения. И они нужны нам для того, чтобы наша программа могла сравнивать различные типы данных, например: числа, строки, переменные и так далее.

Булевы значения: правда или ложь

У Булевой логики есть логические значения: True и False:

True – когда условие истинно. И False — когда условие ложно.

Давайте теперь сыграем.

Я буду сравнивать числа, а Вы будете отвечать в уме – True, если это истина, или False, если это ложь.

Начнем?

2 > 4
10 < 20
3 == 3
5 != 7

А теперь давайте сделаем то же самое в Python. Для этого мы создадим переменную – результат, и присвоим ей значение 2 > 4

Затем выведем результат на экран с помощью функции print. Вот, как это будет выглядеть:

результат = 2 > 4
print(результат)

Впишите этот код в компилятор и запустите его.

Код.py

Если значение переменной является истиной, программа вернет результат True. Если же значение окажется ложью, программа вернет False.

Ну как? Что возвращает программа?

А теперь подставьте остальные значения из списка, одно за другим, запускайте код и наблюдайте за результатом, который возвращает программа.

Вот так и работает булева логика в Python.

Но что, если мы попробуем сравнить строки? Попробуйте сравнить яблоки с апельсинами, используя следующее значение в переменной:

результат = "яблоки" == "апельсины"
print(результат)

Запишите этот код в компилятор и запустите его.

Код.py

А теперь сравните яблоки с яблоками:

результат = "яблоки" == "яблоки"
print(результат)

Видите результат?

Теперь Вы знаете, что в программировании булева логика работает не только с числовыми, но и с другими форматами данных.

True и False в переменных

Как Вы уже заметили, мы можем хранить результаты сравнений, которые возвращают True или False в переменных.

Давайте рассмотрим эту тему подробнее вот с таким примером:

результат = "яблоки" == "бананы"
print(результат)

Давайте впишем этот код в компилятор и запустим его.

Код.py

В этом коде мы создали переменную с именем “результат”, и присвоили ей логическое значение от сравнения двух строк «яблоки» и «бананы».

Затем мы спустились на одну строку вниз, и вывели значение переменной “результат” на экран, передав имя переменной в скобки функции print. Которую мы перед этим создали.

Правда, не сложно?

А теперь измените код, указав, что яблоки и бананы не равны. Вы уже знаете как это делать 🙂

Что теперь возвращает программа?

Сравнение переменных в Python

Мы можем сравнивать не только числа и строки, но и целые переменные!

Посмотрите, как это можно сделать:

игра = "Dota"
результат = игра == "FIFA"
print(результат)
Код.py

Но, прежде чем записать это пример в компилятор и запустить его, подумайте и скажите, какой результат он вернет? True или False?

Решили? А теперь давайте посмотрим правильно Вы решили, или нет:

Как видите, сначала мы создали переменную под названием игра и присвоили ей значение сроки “Dota”.

Затем мы спустились на одну строку ниже, и создали вторую переменную по имени результат.

После этого мы присвоили переменной результат логическое значение от сравнения нашей первой переменной – игра, со строковым значением FIFA.

Затем мы спустились еще на одну строку ниже, и вывели значение переменной результат на экран, с помощью функции print.

А так как значение нашей переменной игра равно строке Dota, а не строке FIFA, то программа вернула False.

Ну как? Совпало Ваше решение с ответом программы?

Давайте теперь закрепим пройденный пример. Возьмите наш код, и напишите на его основе свою версию программы для создания и сравнения двух переменных.

Код.py

Меняйте что угодно по вашему желанию: имена переменных, их значения. И конечно операторы сравнения.

Python программа для проверки пароля

Ну и в завершение пройденной части, давайте отработаем очень упрощенный пример из реальной жизни: Программа, которая проверяет правильность введенного пароля:

пароль = "рыба-меч"
приветствие = пароль == "рыба-меч"
print(приветствие)

Введите этот код в компилятор и запустите его.

Код.py

Давайте рассмотрим все по порядку.

В первой строчке мы создали переменную – пароль, и присвоили ей значение – рыба-меч.

Затем на второй строчке мы создали новую переменную по имени приветствие. И присвоили ей логическое значение, которое сравнивает значение переменной пароль и строку “рыба-меч”.

И, наконец, в третьей строчке мы вывели на экран результат логического сравнения из второй строчки.

Поскольку в качестве оператора сравнения мы использовали == (Равно), а значение переменной пароль действительно равно строке “рыба-меч”, то, переменная приветствие вернула True.

Таким образом, можно представить, что:

“рыба-меч” из первой строчки – это пароль, который хранится в базе паролей.

“рыба-меч” из второй строчки – это пароль, который вводит пользователь, чтобы войти в личный кабинет.

приветствие = пароль == из второй строчки – это код, который сверяет пароль от пользователя с паролем из базы.

А print(приветствие) из третьей строчки – это всего лишь функция, которая выводит результат сверки на экран. True, если пароли совпадают, или False, если пароли не совпадают.

Теперь измените “рыба-меч” из первой или второй строчки на любое другое слово или словосочетание, и перезапустите программу. Программа должна вернуть False, так как пароли больше не совпадают.

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

Булева логика в Python, итоги

В пятой части Вы сделали следующее:

  1. Узнали, что такое булева логика в Python;
  2. Научились применять операторы сравнения;
  3. Познакомились с логическими значениями True и False;
  4. Научились использовать логические значения в переменных;
  5. Узнали, как программисты используют булеву логику для авторизации пользователей.

Поздравляю! У Вас отличный прогресс! А теперь давайте применим булеву логику в более сложных примерах.

Это мы сделаем в следующем уроке – Условные заявления в Python.


Вам понравится:

Python Online – онлайн компилятор, с которым вы можете писать, запускать и проверять свой код без установки программ.

Python Online

Начинаем Программировать на Python

Программировать на Python легко! Давайте начнем и сразу напишем нашу первую строчку кода на Python! Любая, даже самая продвинутая программа…

Переменные в Python

Переменные в Python создаются просто. И в этом уроке Вы с легкостью научитесь их создавать и применять в своем коде….