50 行Python代码,轻松实现中英文翻译

Posted python6359

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了50 行Python代码,轻松实现中英文翻译相关的知识,希望对你有一定的参考价值。

技术分享图片

Python学习交流群:125240963,群内每天分享干货,包括最新的python企业案例学习资料和零基础入门教程,欢迎各位小伙伴入群学习交流

现在的时代,越来越看重英语能力。如果你懂得英语,你会接触到更大的世界,你会发现更多的信息。尤其是对于程序员来说,好的编程资料都是来自英文文档。那些国内的翻译的版本,有很多内容跟原版相差的太多,甚至牛头不对马嘴。

虽然现在有非常多的翻译软件,但通过自己动手写个 python 小程序,是非常的有成就感。甚至你借助今天的代码,也可以自己开发个小型翻译软件。

有道词典接口

今天的翻译程序是借用有道翻译的接口来实现的。程序的逻辑很简单,就是利用有道翻译 ,把需要翻译的内容做为参数,传到相应的 url 里。然后通过有道的服务器返回一个 json 数据,我们就可以获得相应的翻译结果。

程序调用结果

启动程序在终端输入你想要翻译的内容,可以中译英,也可以英译中。比如输入「Koc 最帅!」。

技术分享图片
 

相应的输入英文也可以翻译成中文。

技术分享图片
 

程序代码

程序代码很简单,在相应的代码里我都有注释。

 1 import json
 2 
 3 import requests
 4 
 5 # 翻译函数,word 需要翻译的内容
 6 def translate(word):
 7     # 有道词典 api
 8     url = http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule&smartresult=ugc&sessionFrom=null
 9     # 传输的参数,其中 i 为需要翻译的内容
10     key = {
11         type: "AUTO",
12         i: word,
13         "doctype": "json",
14         "version": "2.1",
15         "keyfrom": "fanyi.web",
16         "ue": "UTF-8",
17         "action": "FY_BY_CLICKBUTTON",
18         "typoResult": "true"
19     }
20     # key 这个字典为发送给有道词典服务器的内容
21     response = requests.post(url, data=key)
22     # 判断服务器是否相应成功
23     if response.status_code == 200:
24         # 然后相应的结果
25         return response.text
26     else:
27         print("有道词典调用失败")
28         # 相应失败就返回空
29         return None
30 
31 def get_reuslt(repsonse):
32     # 通过 json.loads 把返回的结果加载成 json 格式
33     result = json.loads(repsonse)
34     print ("输入的词为:%s" % result[translateResult][0][0][src])
35     print ("翻译结果为:%s" % result[translateResult][0][0][tgt])
36 
37 def main():
38     print("本程序调用有道词典的API进行翻译,可达到以下效果:")
39     print("外文-->中文")
40     print("中文-->英文")
41     word = input(请输入你想要翻译的词或句:)
42     list_trans = translate(word)
43     get_reuslt(list_trans)
44 
45 if __name__ == __main__:
46     main()

 

作者:痴海
链接:https://juejin.im/post/5b4bdb81e51d45616f4575dd

以上是关于50 行Python代码,轻松实现中英文翻译的主要内容,如果未能解决你的问题,请参考以下文章

python小爬虫-28行代码实现图形化在线翻译

python200行代码实现一个翻译软件

100行python代码,轻松完成贪吃蛇小游戏

PowerShell:30行代码轻松实现SQL Server数据库容量监控

python学习---50行代码实现图片转字符画1

看日本电影再也不怕看不懂了,6行Python代码轻松实现音频转文字