当我运行这段代码时,我得到以下错误:UnboundLocalError:赋值前引用的变量'clicks'。不知道该怎么办。如果有帮助的话,我正在运行python2.7.5
from Tkinter import *
from ttk import *
clicks = 0
def press():
clicks += 1
def displayclicks():
print clicks
root = Tk()
root.title("Test GUI")
root.geometry("200x100")
app = Frame(root)
app.grid()
Label(app, text="press the button!").grid()
clicks = 0
x = Button(app, text="BUTTON", command=press)
x.grid()
y = Button(app, text="Print clicks", command=displayclicks)
y.grid()
root.mainloop()
为了更改全局变量,需要显式引用它。由于方法
press()
正在添加到全局变量clicks
,因此需要使用global
关键字来引用它:在方法
displayclicks()
中,您不必这样做,因为您只是打印值,而不是修改它。你知道吗相关问题 更多 >
编程相关推荐