菜鸟问题,但我正在用GUI制作一个非常基本的程序。它需要法语单词并将其翻译成英语(多种)
from tkinter import *
import webbrowser
def show_entry_fields():
website = "www.wordreference.com/fren/%s" % (e1.get())
webbrowser.open(website)
master = Tk()
Label(master, text="French Word").grid(row=0)
e1 = Entry(master)
e1.grid(row=0, column=1)
Button(master, text='Quit', command=master.quit).grid(row=3, column=0, sticky=W, pady=4)
Button(master, text='Show', command=show_entry_fields).grid(row=3, column=1, sticky=W, pady=4)
mainloop( )
问题是,如果我输入多个单词,它会打开
www.wordreference.com/fren/Bonjour%20Avoir
我试过了
e1 = [Entry(master)]
但这给了我错误,就像我一样
e1 = Entry[(master)]
您需要更改show_entry_fields
并使用str
的split()
方法:
def show_entry_fields():
# assuming the words are separated by one or more spaces
word_list = e1.get().split() # break the content of e1 into a list of words
for word in word_list:
website = "www.wordreference.com/fren/%s" % word
webbrowser.open(website)
如果您希望单词之间用空格分隔,则需要将定界符传递给split
。例如,如果单词用逗号分隔,后跟一个空格(如中的'hello, world, bye'
),则split
调用应为word_list = e1.get().split(', ')
。
至于你的错误,e1 = [Entry(master)]
做e1
一个名单,其中没有一个get()
方法。这样您AttributeError
在致电时会得到一个show_entry_fields
。e1 = Entry[(master)]
不会创建Entry
实例,而是试图索引到Entry
(类)中,而这不是您可以索引到的东西。因此,这应该立即引发TypeError
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句