#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 - последний абзац
Комментариев нет:
Отправить комментарий