El día 5 de junio de 2013 04:45, Jesus Cea <[email protected]> escribió:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 05/06/13 02:08, Ignacio Rodríguez wrote:
>> Ya que estamos.. ¿Esto es normal?
>>
>> Me sorprende :P
>>
>> "" > float("inf") True
>
> En Python 2.x, objetos de distinto tipo se comparan de forma
> "extraña". Es un detalle de implementación que no tiene sentido y *NO*
> debería utilizarse, porque el resultado no está garantizado y,
> matemáticamente, no tiene sentido.

Por puntualizar, en python2 las comparaciones entre "tipos" no
comparables se realiza según el nombre del tipo.

Así "" > float("int") es True por ser  "str" > "float"

Pero es aún más extraño que sea  (1,) > [2]  por ser "tuple" > "list"
y supongo que habrá más de un código que falle en tonterías así.


>
> En Python 3.x, estas comparaciones dan error, cuando los tipos no son
> comparables. Un entero y un coma flotante se pueden comparar, pero un
> entero y una cadena no, por ejemplo:
>



--
Hyperreals *R: http://ch3m4.org/blog
Quarks, bits y otras criaturas infinitesimales
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a