用python做一个翻译软件。


前言

对于我这种英语比较差的人来说,无论是敲代码还是看文档,
那都是离不开翻译软件的,于是我想自己用python做一个翻译软件,
花了一个小时,终于做了出来了,支持各种语言的翻译


一、需要的库

translate:
谷歌翻译的第三方包,可以实现多种语言之间的相互翻译。

tkinter:
Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。

没有安装的话,复制下面的命令,直接安装

pip install translate
pip install tkinter

二、分析处理

1.步骤

要实现翻译软件,需要完成两样东西:

1.翻译过程的代码实现
2.图形界面代码的实现

2.思路


我的思路是先整体完成翻译的代码,然后再结合图形界面的代码重新整合,开搞!

三.代码的实现

1.翻译部分


翻译部分的代码:

from translate import Translator

lang1=input("想翻译的语言:")
lang2=input("翻译为: ")
trans_all=Translator(from_lang = lang1.capitalize(), to_lang=lang2.capitalize())

text=input("需要翻译的文本")
text_to=trans_all.translate(text)

print(text_to)


展示一手:

请添加图片描述
这部分完成后我们来完成图形界面

2.图形界面代码

这是我设置的界面的大小:
请添加图片描述
图形界面初始化:

# 初始化,画布大小
root = Tk()
root.geometry('340x540')

# 输入语言提示
lb1 = Label(root, text="language  "  "\t""-->" "\t" + "   language")
lb1.place(relx=0.1, rely=0.05, relwidth=0.8, relheight=0.05)

# 第一个语言输入框
inp1 = Entry(root)
inp1.place(relx=0.1, rely=0.1, relwidth=0.3, relheight=0.1)

# 第二个语言输入框
inp2 = Entry(root)
inp2.place(relx=0.6, rely=0.1, relwidth=0.3, relheight=0.1)

效果如下:
请添加图片描述
有强迫症的我,在这个地方调了好久好久…最后终于对称了…心累

然后完成翻译按钮和文本的输入,输出框

# 调用翻译

# 文字提示
lb2 = Label(root, text="输入需要翻译的文本")
lb2.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.05)

# 输入需要翻译的文本
inp3 = Entry(root)
inp3.place(relx=0.1, rely=0.35, relwidth=0.8, relheight=0.15)

# 翻译按钮
btn1 = Button(root, text='翻译', command=translate_to)
btn1.place(relx=0.4, rely=0.5, relwidth=0.2, relheight=0.1)

# 翻译的结果
txt = Text(root)
txt.place(rely=0.7, relheight=0.2)

root.mainloop()

最后呈现的效果:
请添加图片描述

到这里他只是一个躯壳,还没有灵魂,接下来,我们为他注入灵魂。

3.整合


将翻译的代码一起整合后,终于大功告成

先上效果展示,再上代码:

请添加图片描述

ohhhhh完美!!

代码:

from translate import Translator
from tkinter import *


def translate_to():
    lang1 = inp1.get()  # 被翻译的语言
    lang2 = inp2.get()  # 翻译出的语言
    from_to = Translator(from_lang=lang1.capitalize(), to_lang=lang2.capitalize())
    text = inp3.get()  # 得到输入框的文本
    ans = from_to.translate(text)  # 执行翻译
    txt.insert(END, ans)  # 将翻译的结果给到文本框txt
    inp3.delete(0, END)  # 清空输入框


# 初始化,画布大小
root = Tk()
root.geometry('340x540')

# 输入语言提示
lb1 = Label(root, text="language  "  "\t""-->" "\t" + "   language")
lb1.place(relx=0.1, rely=0.05, relwidth=0.8, relheight=0.05)

# 第一个语言输入框
inp1 = Entry(root)
inp1.place(relx=0.1, rely=0.1, relwidth=0.3, relheight=0.1)

# 第二个语言输入框
inp2 = Entry(root)
inp2.place(relx=0.6, rely=0.1, relwidth=0.3, relheight=0.1)

# 调用翻译

# 文字提示
lb2 = Label(root, text="输入需要翻译的文本")
lb2.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.05)

# 输入需要翻译的文本
inp3 = Entry(root)
inp3.place(relx=0.1, rely=0.35, relwidth=0.8, relheight=0.15)

# 翻译按钮
btn1 = Button(root, text='翻译', command=translate_to)
btn1.place(relx=0.4, rely=0.5, relwidth=0.2, relheight=0.1)

# 翻译的结果
txt = Text(root)
txt.place(rely=0.7, relheight=0.2)

root.mainloop()

总结

这个小软件或许不是很高大上,
但是每一种尝试和发现,都能成为我进步的阶梯

结果是看客们茶余饭后的谈资
过程是亲历者经年留影的宝藏

需要完整代码可以加qq群自提:785318982 群内有大佬,如果遇到学习问题,可以在里面问。

如果感觉还不错的话点赞,关注支持一下吧,谢谢啦!


对python感兴趣的朋友可以看看这些文章,相信我看完一定会有收获的:
【小白可学会系列三】爬虫爬取千万数据如何快速保存,看这里!
【小白可学会系列二】用python爬虫框架Scrapy来完成一个小项目

  • 41
    点赞
  • 183
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 23
    评论
评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

弈鸣coding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值