Python 中文转英文 汉译英 英译汉

方法1:

先安装translate:

pip install translate

然后如下汉译英代码:

# -*- encoding:utf-8 -*-

from translate import Translator

#英译汉
#translator = Translator(to_lang="chinese")
#translation = translator.translate("Do you believe")
#print(translation)

#汉译英
def trans(ZH):
    translation = translator.translate(ZH)
    print (translation)

def panduan(ZH):
    if ZH == '人':
        print('请输入人脸、人像、或行人:')
        ZH = input()
        trans(ZH)
    elif ZH == '车':
        print('请输入汽车、火车、或自行车:')
        ZH = input()
        trans(ZH)
    else:
        translation = translator.translate(ZH)
        print (translation)
        
translator = Translator(from_lang="ZH",to_lang="EN")
ZH = input()
panduan(ZH)

由于测试的时候发现翻译“人、车”等字词时,不能正确翻译所以特别加了判断。

方法2:

参考这个博客:

python汉字转成拼音、英文的一个学习随笔-CSDN博客

可以汉字转拼音、也可以汉字转英文。

import pinyin.cedict

#result = pinyin.cedict.translate_word('苹果')
#print(result)
result = pinyin.cedict.translate_word('菠萝蜜')
print(' ',result)
result = pinyin.cedict.translate_word('红苹果')
print(' ',result)
result = pinyin.cedict.translate_word('中国')
print(' ',result)
result = pinyin.cedict.translate_word('绿地')
print(' ',result)
result = pinyin.cedict.translate_word('裸土')
print(' ',result)
result = pinyin.cedict.translate_word('天空')
print(' ',result)
result = pinyin.cedict.translate_word('大黄蜂')
print(' ',result)
result = pinyin.cedict.translate_word('行人')
print(' ',result)
方法3:

上面两个方法翻译不准、不稳定

这个方法很好用

from transformers import MarianMTModel, MarianTokenizer
model_path =r"./translateModel"
model = MarianMTModel.from_pretrained(model_path)
tokenizer = MarianTokenizer.from_pretrained(model_path)
src_text = input()
translated = model.generate(**tokenizer(src_text, return_tensors="pt", padding=True))
r= [tokenizer.decode(t, skip_special_tokens=True) for t in translated]
print(r)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值