python编写的德汉互译小程序

参考文章链接:https://blog.csdn.net/dushine2008/article/details/85335307
在他的基础上做了点小小小改动,dict1.txt放德语,dict2.txt放中文,然后实现了互译,而不是只能外文对中文的单向翻译。

全部代码如下:

import tkinter
# 读取内容并执行搜索的方法
def search(word):
    # 读取字典内所有内容  dict1放德语  dict2放中文
    file1 = open("dict1.txt", encoding='utf-8')
    file2 = open("dict2.txt", encoding='utf-8')
    
    dict_list1 = file1.readlines()
    dict_list2 = file2.readlines()
    # print(dict_list1)
    global i,j
    i =0
    
    # 这个循环输入德语,翻译结果
    # 遍历读取的内容,查看用户输入的英文是否存在
    for dict00 in dict_list1:
        # 不区分大小写查询,查询到就输出英文和中文
        if word.upper() == dict00.upper().split('\n')[0]:
            # 把查询的内容返回并结束循环
            return "%s: %s" % (dict_list1[i].split('\n')[0], dict_list2[i])
        i += 1

    # 这个循环输入中文,翻译结果
    j = 0
    for dict01 in dict_list2:
        if word == dict01.split('\n')[0]:
            return "%s:%s" % (dict_list2[j].split('\n')[0], dict_list1[j])
        j += 1
    return "您查询的单词尚未收录,敬请期待。。。\n"
    # 关闭流
    file1.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("德语字典")

# 设置窗口尺寸
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)


search_word()

# 显示
window.mainloop()

.py文件外边放两个txt:
这样做的原因只是因为方便粘贴谷歌翻译的结果。。。。
在这里插入图片描述