Python使用(解析)文本框值作为字符串到函数中

时间:2012-10-23 04:15:43

标签: python string variables textbox tkinter

url=StringVar()
txt1=Entry(root,textvariable=url)
txt1.pack()

button1 = Button(root, text="Download" ,command=downloadFile)
button1.pack()
root.mainloop()

好的,这是我的基本GUI ...我有一个文本框txt1,我想在下面的函数中使用

def downloadFile():
    #print "url is:",url
    file_name = url.split('/')[-1]

我的目标是输入文本框中的URL,然后在我的函数downloadfile()中拆分URL,但我的url变量变为PY_VAR0而不是“www.example.com/file.exe”

我得到的错误信息是“StringVar实例没有属性拆分” 我做的事情非常错,但我不知道在哪里。 有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

StringVar只是“字符串变量的值持有者”。要获取其内容(字符串),请使用:

StringVar.get() # Return value of variable as string.

直接打印StringVar(“print url”)调用:

StringVar.__str__() # Return the name of the variable in Tcl.

将返回内部变量名称,而不是其值。在您的代码中使用:

file_name = url.get().split('/')[-1]