← Все вопросы
Почему if a = b выдаёт SyntaxError, а не сравнивает?
5
Пишу проверку, равны ли два числа, но питон выдаёт ошибку прямо на строке с if:
a = 5
b = 5
if a = b:
print("равны")
Почему нельзя так написать?
1 ответ
10
✓ Принятый ответ — помог автору
Ты перепутал два разных знака:
=— это присваивание (положить значение в переменную).==— это сравнение (проверить, равны ли).
Внутри if нужно именно сравнение, поэтому два знака равно:
if a == b:
print("равны")
Кстати, питон специально запрещает = внутри if синтаксисом — в других языках (C, JS) это разрешено и приводит к коварным багам, а здесь ты сразу видишь ошибку. Это плюс.
Ваш ответ
Войдите, чтобы ответить на вопрос.