sino simbolos significa relacionales que operadores else ejemplos condicional anidado python python-2.7

simbolos - Lista de Python mayor que el número



simbolos en python (2)

De acuerdo con el Manual de Referencia de Python ,

La mayoría de los otros objetos de tipos incorporados se comparan de forma desigual a menos que sean el mismo objeto; la elección de si un objeto se considera más pequeño o más grande que otro se realiza de manera arbitraria pero consistente dentro de una ejecución de un programa.

He descubierto que una lista es mayor que un número.

>>> [1,2,3] > 1000 True

¿Hay alguna razón por la que esto funciona? No puedo convertir una lista a un int con int([1,2,3]) . El int no se puede convertir en una lista con list(1000) . Entonces, ¿cómo está Python comparando los dos?


En este caso de tipos "no coincidentes", los tipos se enumeran lexicográficamente por nombre de tipo: una "lista" aparece después de una "int" en orden alfabético, por lo que es mayor.

Detalle de implementación de CPython: los objetos de diferentes tipos, excepto los números, están ordenados por sus nombres de tipo; los objetos del mismo tipo que no admiten una comparación adecuada están ordenados por su dirección. ( source )

No hay una especificación de idioma para el pedido (aparte del hecho de que es consistente). Resulta que sucede que CPython es la implementación más común en la que existe este detalle del lenguaje de ser ordenado lexicográficamente por nombres de tipo.