我是初学者,请耐心等待。这段代码是一段GUI,当用户在其中写入时会有一个Entry框并点击“Enter”按钮,它会使用标签显示用户文本,但是当我尝试在函数外部获取用户文本时,我会收到错误< / p>
def qf(event):
global var
var= ""
var= s.set("%s" % r.get())
class1(tk.Frame)
def __init__:(self, parent, controller)
global s,r
s =tk.StringVar()
r= tk.StringVar()
textbox1 = tk.Entry(self,width= 75,textvariable= r)
textbox1.place(relx=.28, rely=.966 )
textbox1.bind('<Return>', qf)
label3 = tk.Label(self, textvariable= s, font= Large_Font)
label3.pack(pady=10, padx=10)
print " Text is: %s" %var
我收到此错误:NameError:未定义全局名称'var'
答案 0 :(得分:0)
好吧,似乎你在qf()
函数中定义了全局变量,但是你从不运行该函数,所以你永远不要定义全局变量var
。
请参阅以下代码:
def qf():
global var
var = "hello"
qf() # if you miss this, python can't find 'var'
print "Text is: %s" % var