[pyar] De Alejandro: otra duda
Ricardo Aráoz
ricaraoz en gmail.com
Mie Jun 26 01:03:04 ART 2013
El 25/06/13 23:18, German Jimenez escribió:
> Es de muy noob esto pero no logro intuir porque sería el switch-case
> simulado con un diccionario mas eficiente que el if-elif, pensé que
> sería al revés, o una comparación de igualdad es mas lenta que una
> búsqueda en un diccionario + una llamada a una función?
>
> def ifelif(n):
>
> if n == 0: pass
>
> elif n == 1: pass
>
>
> def simulswitch(n):
>
> def foo(): pass
>
> def bar(): pass
>
> dic = {0:foo,1:bar}
>
> dic[n]()
>
>
> ¿He cometido algún error en hacer ésta comparación?
No entiendo tu código.
Pero en cuanto al tema del diccionario versus el if-elif, basta con
decir que en el if-elif tenés una búsqueda lineal, si tenés 30 cases vas
a tener que ir comparando una por una hasta encontrar la que se cumple.
Con el diccionario es más rápido.
More information about the pyar
mailing list