Python GUI实现字典功能、Python tkinter编写字典
需求分析
本地字典文件内容如下:
Africa n. 非洲
Aids n. 爱滋病
America n. 美洲
April n. 四月
Arab adj. 阿拉伯的\nn. 阿拉伯人
Asia n. 亚洲
August n. 八月
。。。 。。。
用户输入英文课查询对应的中文内容,如果用户输入的英文不存在给与提示。
案例代码:
import tkinter
# 读取内容并执行搜索的方法
def search(word):
# 读取字典内所有内容
file = open("dict.txt")
dict_list = file.readlines()
# 遍历读取的内容,查看用户输入的英文是否存在
for dict00 in dict_list:
dict_item = dict00.split("\t")
# 不区分大小写查询,查询到就输出英文和中文
if word.upper() == dict_item[0].upper():
# 把查询的内容返回并结束循环
return "%s: %s" % (dict_item[0], dict_item[1])
else:
return "您查询的单词尚未收录,敬请期待。。。\n"
# 关闭流
file.close()
def search_word():
word = entry.get().strip()
if len(word) != 0:
# 执行搜索的方法,获取搜索的结果
result = search(word)
# 把结果插入到文本显示框
txt.insert(tkinter.INSERT, result)
else:
txt.insert(tkinter.INSERT, "内容不能为空\n")
# 创建主窗口
window = tkinter.Tk()
# 添加标题
window.title("XX字典")
# 设置窗口尺寸
window.geometry("400x300")
# 内容输入块
frame_input = tkinter.Frame(window, width=300, height=30)
frame_input.place(x=50, y=10)
# 输入框
entry = tkinter.Entry(frame_input, width=30)
entry.pack(side="left")
# 按钮
btn_in = tkinter.Button(frame_input, text="查询", width=5, command=search_word)
btn_in.pack(side="right", padx=5)
# 文本显示块
frame_txt = tkinter.Frame(window, width=350, height=200)
frame_txt.place(x=20, y=40)
# 文本显示框的滚动条
scroll_bar = tkinter.Scrollbar(frame_txt)
scroll_bar.pack(side="right", fill=tkinter.Y)
# 内容显示框
txt = tkinter.Text(frame_txt, width=50, height=18)
txt.pack(side="bottom", pady=15)
# 关联滚动条和文字
txt.config(yscrollcommand=scroll_bar.set)
scroll_bar.config(command=txt.yview)
# 显示
window.mainloop()
资源:
字典内容格式如下:
Africa n. 非洲
Aids n. 爱滋病
America n. 美洲
April n. 四月
Arab adj. 阿拉伯的\nn. 阿拉伯人
Asia n. 亚洲
August n. 八月
BASIC n. 初学者通用符号指令码
。。。 。。。
总数有13372条,内容太多无法上传,附下载链接(需要1个C币哦,想看的话你肯定不会在乎的,对的吧):
https://download.csdn.net/download/dushine2008/10884911