Что означает `<>` в Python?
Я пытаюсь использовать в Python 3.3 старую библиотеку (начиная с 2003 года!). Когда я импортирую его, Python выдает мне ошибку, потому что в исходном файле есть знаки <>
, например:
if (cnum < 1000 and nnum <> 1000 and ntext[-1] <> "s":
...
Я предполагаю, что это уже забытый знак на этом языке.
Что именно это означает и какой (более поздний) знак следует заменить?
Ответы
Ответ 1
Это означает, что он не равен. Это было взято из ABC
(предшественник python), см. здесь:
x < y, x <= y, x >= y, x > y, x = y, x <> y, 0 <= d < 10
Заказные тесты (<>
означает "не равно" )
Я считаю, что ABC
взял его с Pascal, язык, с которого начал программироваться Guido.
Теперь он удален в Python 3. Вместо этого используйте !=
. Если вы CRAZY, вы можете отказаться от !=
и разрешить только <>
в Py3K с помощью этого пасхального яйца:
>>> from __future__ import barry_as_FLUFL
>>> 1 <> 2
True
Ответ 2
Это означает НЕ EQUAL, но оно устарело, вместо этого используйте !=
.
Ответ 3
Это старый способ указать !=
, который был удален в Python 3. Библиотека, достаточно старая, чтобы использовать ее, вероятно, сталкивается с различными другими несовместимостями с Python 3: возможно, это хорошая идея запустить ее 2to3, который автоматически меняет это, среди многих других вещей.
Ответ 4
Стоит знать, что вы можете использовать сам Python для поиска документации, даже для операторов знаков препинания, с которыми Google не справляется.
>>> help("<>")
Сравнения
В отличие от C все операции сравнения в Python имеют одинаковый приоритет, который ниже, чем у любой арифметики, сдвигающей или побитовой операция. Кроме того, в отличие от C, выражения типа a < b < c
имеют интерпретация, которая условна в математике:
Сравнение дает логические значения: True
или False
.
Сравнение может быть закодировано произвольно, например, x < y <= z
является эквивалентно x < y and y <= z
, за исключением того, что y
оценивается только один раз (но в обоих случаях z
вообще не оценивается, когда x <
y
оказывается ложным).
Формы <>
и !=
эквивалентны; для согласованности с C, !=
является предпочтительным; где !=
упоминается ниже <>
, также принято. <>
орфография считается устаревшей.
См. http://docs.python.org/2/reference/expressions.html#not-in
Ответ 5
Используйте !=
или <>
. Оба значения не равны.
[Ссылка: ссылка на язык Python]
Операторы сравнения <>
и !=
являются альтернативными написаниями одного и того же оператора. !=
является предпочтительным написанием; <>
устаревает.