Bonjour.
Je débute en python et en programmation en général.
J'essaie de creer une appli basique pour apprendre : un compteur.
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
from Tkinter import *
 
fen1 = Tk()
 
u = 0
i = StringVar()
i.set(u)
 
tex1 = Label(fen1, textvariable=i)
tex1.pack()
 
def incremente():
	u += 1
	i.set(u)
 
Button(fen1, text='Quitter', command = fen1.destroy).pack()
 
Button(fen1, text='Incremente', command = incremente).pack()
 
fen1.mainloop()
Quand je clique pour incrementer ca me donne dans la console ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
[laurent@localhost soranpy]$ python essaivariabletk.py
Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python2.4/lib-tk/Tkinter.py", line 1345, in __call__
    return self.func(*args)
  File "essaivariabletk.py", line 13, in incremente
    u += 1
UnboundLocalError: local variable 'u' referenced before assignment
Je crois comprendre le problème ( il peut pas réaffecter "u" , cest ça ? ) mais je vois pas comment le résoudre.
Si vous pouviez me donner quelques pistes...
Merci d'avance