Une fonction : c'est une variable
Complément :
Une fonction peut être associée à une variable. Cela se fait simplement en utilisant l'affectation :
1
def f(x):
2
return x + 1
3
4
print("La valeur de f(2) est :", f(2))
5
z = f
6
print("La valeur de f(2) est :", z(2))
7
Exemple : Utilisation d'un dictionnaire
Problème : L'utilisateur peut calculer soit la moyenne, soit le minimum, soit le maximum de x et y s'il entre la lettre a, b ou c respectivement.
Une première solution est d'utiliser la structure conditionnelle if :
1
def f1(x, y):
2
return (x + y)/2
3
def f2(x, y):
4
return min(x,y)
5
def f3(x, y):
6
return max(x,y)
7
8
x = 10
9
y = 30
10
lettre = input("Choisir la fonction (a, b ou c) ")
11
if lettre == 'a':
12
print(f1(x, y))
13
elif lettre == 'b':
14
print(f2(x, y))
15
elif lettre == 'c':
16
print(f3(x, y))
17
else:
18
print("Code inconnu")
19
Une autre solution est d'utiliser un dictionnaire :
1
def f1(x, y):
2
return (x + y)/2
3
def f2(x, y):
4
return min(x,y)
5
def f3(x, y):
6
return max(x,y)
7
8
code = {'a' : f1, 'b' : f2, 'c' : f3}
9
x = 10
10
y = 30
11
lettre = input("Choisir la fonction (a, b ou c) ")
12
if lettre in code:
13
print(code[lettre](x, y))
14
else:
15
print("Code inconnu")
16