J'ai toujours le même problême, lorsque j'affecte la valeur de retour d'une fonction à une variable.

voici mon code:

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
#calcule les carectéristiques d'un entier en fonction de ses autres caractéristiques
def identifieEntier(entier):
 
	testEntier = testEntier(entier)
	if testEntier == True:
		signe = signe(entier)
		parite = parite(entier)	
		if parite == True and entier != 2:
			premier = False	#un nombre premier n'est jamais pair à l'exception de 2
			carre = carre(entier)
		else:
			carre=False	#un nombre carre est toujours pair
			premier=premier(entier)
			if premier==True:
				mersenne=mersenne(entier)
			else: 
				mersenne=False
				parfait=parfait(entier)
			if parfait==True:
				triangulaire=True	#un nombre parfait est forcément tringulaire
			else: 
				triangulaire=triangulaire(entier)
 
		narcissique=narcissique(entier)	 
		kaprekar=kaprekar(entier)		
	else: 
		print "Entrez un entier!"
 
def valider(event): #évènment associé à la touche enter sur la zone de texte 
	entier = int(entree.get())
	identifieEntier(entier)
Après éxécution j'ai le message d'erreur suivant:
UnboundLocalError: local variable 'testEntier' referenced before assignment

Est ce que quelqu'un pourrait me dire clairement ce que ça veut dire?
Je crois que je n'ai pas tout saisi au niveau des variables en python...
On peut quand même affecter la valeur de retour d'une fonction dans une variable?

merci