select case

Pepe Aracil pepe en diselpro.com
Jue Abr 21 23:36:50 CEST 2005


El Jueves, 21 de Abril de 2005 18:08, Rafael Villar Burke escribió:
>
> Esto funciona, pero tiene un estilo un poco C. Si se puede es mejor
> comprobar la identidad (con is) y no la igualdad de valores, puesto que
> es más rápido comparar dos direcciones de memoria que usar una función
> de comparación (que no siempre son enteros o comparaciones evidentes).
> Además, es más legible así:
>
> if (_select5 is 1):
>         DoOne()
> elif (_select5 is 2):
>         DoTwo()
> elif (_select5 is 3) or (_select5 is 4):
>         DoThreeOrFour()
> elif (5 <= _select5 <= 10):
>         DoFiveToTen()
> else:
>         DoElse()
>

Lo del "is" no lo tengo tan claro. Por alguna razón de optimización , funciona 
con enteros del 0 a 99, lo que puede resultar algo confuso y podría cambiar 
en futuras versiones o implementaciones de python.

>>> a = 1
>>> a is 1
True
>>> a = 100
>>> a is 100
False
>>>




Salud.

------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es