如何把python代码翻译成中文-Python:谷歌翻译20次的程序如何实现?

Python:谷歌翻译20次的程序如何实现?

作者:橙汁

c1fa7820071196a84aa1775228fd03061d6cf606.jpg

【梗的解释】

“ 谷歌翻译20次”就是多次利用谷歌翻译(Google Translate)将原本正常的名场面对话翻译成语言逻辑紊乱、特别搞笑的对话。

比如:这个视频,利用谷歌翻译将赛尔号“魔灵王之墓”的剧情制作成非常搞笑的对话。1-1card97758805_web.png

【翻译实现】

除了使用人工手动往复翻译的方法,还可以使用编程语言进行翻译。比如,本文将展示如何使用Python实现这一过程。

① 下载并安装对应系统的Python3环境。

Python官网: https://www.python.org

② 安装googletrans模块

googletrans是调用谷歌翻译功能的Python模块。

打开控制台(Windows系统下按Win+R,输入“cmd”即可打开“命令提示符”),输入“ pip install googletrans”并按下回车键,等待模块安装完成。

③ 书写代码,进行编程。

下面的代码,我只涉及到了“中文”和“英语”两种语言的循环翻译,没有涉及到其他的语言。如果你有其他方面的需求,可以在函数main()中修改参数txt、times和language,或者根据代码注释直接修改函数本身。

【程序代码】

# 导入模块函数库

from googletrans import Translator

import time

import random

# 初始化函数

def init():

# 需要翻译的原文

global txt

# 需要翻译的次数

global times

# 需要翻译的语言

global language

# 加载翻译引擎

global translator

translator = Translator(service_urls = ['translate.google.cn'])

# 往返翻译一次的函数

def OneRound(s, src, dest):

# 原语种翻译为外语种

s = translator.translate(s, src = src, dest = dest).text

# 设置延时,以免频率过高遭到服务器拒绝

time.sleep(random.randint(50, 300) / 100)

# 外语种翻译为原语种

s = translator.translate(s, src = dest, dest = src).text

return s

# 多次翻译的函数

def OverRound(s, times, src, dest):

ss = []

for i in range(times):

# 进行一次翻译

s = OneRound(s, src, dest)

# 设置延时,以免频率过高遭到服务器拒绝

time.sleep(random.randint(100, 500) / 100)

# 储存中间翻译结果

ss.append(s)

# 输出中间翻译结果

print('第' + str(i + 1) + '次:'+ s)

# 判断文本是否收敛,如果收敛则提前结束

if i > 0 and ss[i - 1] == ss[i]:

return s

if i > 2 and ss[i - 2] == ss[i] and ss[i - 1] == ss[i - 3]:

return s

return s

# 程序主体函数

def main():

init()

for i in range(len(txt)):

print('')

#输出原文

print('原 文:'+ txt[i])

#输出最终翻译结果

print('【最终结果】 ' + OverRound(txt[i], times, language[0], language[1]))

print('')

# 设置延时,以免频率过高遭到服务器拒绝

time.sleep(random.randint(5, 12))

#程序运行处

if __name__ == '__main__':

txt = ['在混沌教派与大暗黑天将克里奥星域搅得天翻地覆的同时,让我们来看看遥远的泰坦星域中所发生的事…',

'可恶的创世圣魂,居然给我耍这种小把戏!',

'但这绝对不可能一直困住我!',

'尽管已经损耗了大半的力量,但这个封印也即将冲破…',

'是你…来得正好,我忠实的仆从...',

'看来你也在外面帮我一同破除这该死的封印,现在快来帮我!',

'…我这就来帮你…',

'啊!!莱茵哈特!你居然! !',

'哼哼哼哼哼!哈哈哈哈哈!',

'为了破除这封印你已虚弱至此,真是天助我也!',

'你不是已经被逝者巨樽的力量所控制…',

'逝者巨樽?哦,你是说那个装亡者之力的小杯子啊…',

'说到这个我还要感谢你,让我感受并达到了一个全新的境界,但是…',

'但是什么?',

'但是现在…我觉得我还可以向着更高的次元突破,而契机就是…你的死!',

'你!啊! !!我的力量!!!快住手!!!',

'你费尽千辛万苦找来的这几样东西,对我来说还有用…',

'?!',

'你休想!他们是我的!是我的!',

'看来,要直接将这些神器剥离出来,还是要花费我一番功夫…',

'那就只好,委屈你暂时忍耐一下了,哈哈哈哈哈哈…。',

'不!!~~~~',

'逝者巨樽…亡者之力…',

'好东西…这简直让我欲罢不能啊…',

'哈哈哈哈,再来!',

'创世之钟…创世神力…',

'这股至高的光明之力…',

'若我可以将其与我的混沌所融合,那将是种怎样的境界…',

'我要迫不及待了!',

'不!!你不能这样!!',

'就是这样,让我再听听你的悲鸣?哈哈哈哈哈!',

'永恒之树的精华么…',

'哼,这玩意儿,暂时还用不到,但弃之也可惜,先留着吧!',

'求你快住手!我的身体,我的力量啊!!!',

'这就不行了?我们还要继续呢…哈哈哈哈!',

'泰坦的生命之力…',

'这和冥域的亡者之力倒也如阴阳两极一样,看来会用得着。',

'那是我的!是我的!你还给我!',

'你的?少让我发笑了!',

'这些不也是你从那些“无辜”的家伙那夺来的吗?我只不过是对你做了同样的事情,哈哈哈哈哈!',

'嚯…这就是你们暗夜一族的至高秘宝,灵核魔杖?',

'求求你..求求你..只有这个,你不能拿走,不然我会魂飞魄散的!',

'就是这个魔杖,帮助你统御了那些截然不同的能量吗? ',

'那我可更不能放过了,拿来吧!喝~~',

'啊!!! !',

'呵呵,一代霸主,临死前居然凄惨至斯,简直不堪入目…',

'好了,东西都到手了,我该找个地方需要好好参详一下,想一想该如何利用它们…',

'等我再次归来之时…我要让整个宇宙,陷入无尽的恐怖,哈哈哈哈哈哈哈!']

times = 20

# 具体语言标识请自行搜索“语言简写代码表”,如下是“中文(简体)”与“英语”。

language = ['zh-CN', 'en']

main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值