select case
Hernán Martínez Foffani
hernan en orgmf.com.ar
Vie Abr 22 12:03:43 CEST 2005
>> Normalmente, en Python no hace falta hacer select case (quiero decir
>> que hay mejores maneras de hacer las cosas). Pero si estás
>> convirtiendo código:
>>
>> http://vb2py.sourceforge.net/docs/select.html
>>
>> _select5 = Value
>> if (_select5 == 1):
>> DoOne()
>> elif (_select5 == 2):
>> DoTwo()
>> elif (_select5 == 3) or (_select5 == 4):
>> DoThreeOrFour()
>> elif (5 <= _select5 <= 10):
>> DoFiveToTen()
>> else:
>> DoElse()
>>
>>
> 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í:
>
> ... resto cortado ...
Porfa, no sobreusen el "is".
Casualmente, a proposito del select-case, se comentaba en
python-dev la posibilidad de hacer que el lenguaje
reconozca el patrón de código
if (x == val1):
...
elif (x == val2):
...
elif (x == val3):
...
else:
...
y lo compile en codigo O(1) en vez de O(n) (n cantidad de
comparaciones.)
-H.
------------ 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