← Все вопросы

Почему === не работает в Python? Какой оператор сравнения правильный?

Задан 4 месяца назад1.5к просмотров2 ответа
8

Пришёл из JavaScript, пишу if x === 5:, а Python выдаёт SyntaxError. Тройное равно не работает! Какой оператор сравнения использовать в Python вместо ===?

2 ответа

11
✓ Принятый ответ — помог автору

В Python нет оператора === — это синтаксис JavaScript. Поэтому x === 5 даёт SyntaxError: invalid syntax. Для сравнения на равенство в Python используется двойное равно ==.

Ошибка:

if x === 5:     # SyntaxError
    print("да")

Правильно:

if x == 5:      # сравнение
    print("да")

Коротко об операторах Python:

  1. = — присваивание (положить значение в переменную): x = 5.
  2. == — проверка равенства значений: x == 5.
  3. != — не равно (аналог !== из JS).
  4. is — проверка, что это тот же объект в памяти (не путать с ==). Для сравнения с None используют x is None, а не x == None.

В Python == уже сравнивает строго (тип учитывается): 5 == "5" даёт False, потому что число и строка не равны. Так что отдельный === просто не нужен. Если вы привыкли к JS — мысленно меняйте === на ==, а !== на !=.

0

2 равно это пайтон 3 равно это js

Ваш ответ

, чтобы ответить на вопрос.