Python GUI实现英汉字典功能、Python tkinter编写英汉字典

时间:2024-03-31 13:55:37

Python GUI实现字典功能、Python tkinter编写字典

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