Страницы

Поиск по вопросам

пятница, 14 февраля 2020 г.

Python 2.7 сравнение списка с числом

#python #python_2x


a=[1, 2, 3, 4, 5]
a > 10000000 #True
a < 29 #False


При сравнении списка с числом получается что список больше любого числа. Почему вообще
определена операция сравнения списка с числом (в Python 3.6 такая операция не определена)
и что происходит при этом сравнении?
    


Ответы

Ответ 1



Во второй версии Питона можно сравнивать объекты разных (нечисловых) типов. В этом случае сравнение происходит по имени типа. Примеры: print [1] > 1 # 'list' > 'int' - True print [1] > '1' # 'list' > 'str' - False Сравнения разных числовых типов происходит по обычным математическим правилам. Note that comparing objects of different types is legal. The outcome is deterministic but arbitrary: the types are ordered by their name. Thus, a list is always smaller than a string, a string is always smaller than a tuple, etc. [1] Mixed numeric types are compared according to their numeric value, so 0 equals 0.0, etc https://docs.python.org/2.7/tutorial/datastructures.html#comparing-sequences-and-other-types - последний абзац

Комментариев нет:

Отправить комментарий