Switch en python
En python la définition d’une fonction est une valeur et peut être affectée à une variable :
def incrementer(i) : return i+1 def doubler(i) : return i*2 def diviser(i) : return i/2 print(incrementer(3)) x=incrementer print(x(3))
Elle peut aussi être utilisée dans un dictionnaire:
CODES={"INC": incrementer, "DOU": doubler, "DIV": diviser, "+" : incrementer, "*" : doubler, "/" : diviser}
Ce qui permet d’associer directement et simplement la fonction associée :
COMMANDES="INC INC * + + /" i=10; for commande in COMMANDES.split(" "): print(commande+" "+str(CODES[commande](i)));