Bonjour,
Je cherche un moyen d'appeler une fonction avec une variable.
Que le nom de la fonction soit la variable.
exemple : si la variable "a" contient toto, en fessant a() ceci exécutera la fonction toto()

j'ai créé un petit programme :
Il ne fonctionne pas car au moment de remplacer la variable par ce qu'elle contient et donc appeler la fonction, ca me renvoi une erreur comme quoi l'exécuteur ne connaît pas «a()».

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/usr/bin/python
# -*- coding:Utf-8 -*-   
 
 
 
def menu():								
 
	print"----------------Menu principal-------------------------------"
 
	a=raw_input(">veuillez entrer le numéro de l'exercice à exécuter:" "\nPar exemple 'ex2_2' pour l' ex2.2: ", )
 
	global a 
 
 
 
def ex2_2():									
	a=input("veuiller entrer le nombre à mettre au carré:", )
 
	b=a*a
 
	print "le résultat de",a,"au carré est:",b
 
	a=raw_input("\nAppuyer sur une touche pour revenir au menu général", )
 
	menu()
 
def ex2_3():
	print "voici l'exercice 2.3"
 
 
 
def sortie():									
	a=raw_input("Voulez vous vraiment quitter ce programme? oui ou non: ", )
 
	if (a == "oui") :
 
 		print"merci! au revoir."
 
		exit()
 
	elif (a == "non") :
 
		menu()	
 
	else :
 
		print">>>Erreur, taper 'oui' pour quitter le programme ou 'non' pour revenir au menu principal!"
 
		sortie()
 
 
 
def gestion_de_la_fonction(m):					
	print"execution du programme:", m
 
	m()							
 
 
#ici début du programme
 
menu()
 
print "la var a est:",a
 
print "le programme s'execute:\n" , gestion_de_la_fonction(a)
L'erreur que j'ai en retour est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 File "./pytho", line 29, in gestion_de_la_fonction
    m()						
TypeError: 'str' object is not callable
Auriez vous une idée pour faire fonctionner ce programme avec une variable pour appeler une fonction?
Je pourrais aussi utiliser des «if» pour sélectionner la fonction, mais il y aurait autant de if que de fonctions à exécuter.
Merci de votre aide.