1
问题所在的代码相当大,因此我正在此处起草指纹版本。使用tkinter中的按钮更改变量
import tkinter
variable = "data"
def changeVariable():
variable = "different data"
def printVariable():
print(variable)
window = tkinter.Tk
button1 = tkinter.Button(window, command=changeVariable)
button1.pack()
button2 = tkinter.Button(window, command=printVariable)
button2.pack()
因此,在本例中,我按下第一按钮改变“变量”,那么第二个按钮,打印它。但是“数据”被打印而不是“不同的数据”。我搜索了一下,并决定在定义主代码和函数中的变量之前使用global,所以代码如下所示。
import tkinter
global variable
variable = "data"
def changeVariable():
global variable
variable = "different data"
def printVariable():
global variable
print(variable)
window = tkinter.Tk()
button1 = tkinter.Button(window, command=changeVariable)
button1.pack()
button2 = tkinter.Button(window, command=printVariable)
button2.pack()
window.mainloop()
但现在它说'名称'变量'未定义'。
本质上,我怎样才能得到变量'变量'用tkinter中的按钮进行更改?想我想用全球?
我想你不需要第一个'全局变量'。 – quamrana
你的代码适合我。你确定你没有在那里拼错“变数”吗? – Novel
您的第二个示例适用于我,一旦我做了两个更改:'window = tkinter.Tk()'并在末尾添加'window.mainloop()'。 – FamousJameous