Помогите понять логику в коде python

Roxtem

Новичок
Пользователь
Апр 22, 2023
1
0
1
Python:
a = True
b = 10
if b and a == 10:
    print("верно")
else:
    print("неверно")
Выводит в интерпретаторе "неверно". Если мы меняем a и b местами, например if a and b == 10:, то значение выводит "верно", почему?
 

Вложения

  • Скриншот от 2023-04-22 18-23-31.png
    Скриншот от 2023-04-22 18-23-31.png
    33,8 КБ · Просмотры: 1
  • Скриншот от 2023-04-22 18-24-48.png
    Скриншот от 2023-04-22 18-24-48.png
    36,3 КБ · Просмотры: 1

robisho

Активный пользователь
Пользователь
Окт 19, 2020
151
26
28
вам нужно разобраться в булевых значениях. if b and a == 10 - это значит, что b должен быть True или больше нуля и при этом обязательно a равно 10. это условие не выполняется, поэтому выполняется код в блоке else. if a and b == 10 - все условия выполняются, поэтому выводится "верно".
 

Форум IT Специалистов