Python使用translate庫實(shí)現(xiàn)多語種互相翻譯
在python中,有個(gè)多語種翻譯包,可以將各種語言進(jìn)行翻譯轉(zhuǎn)換,例如英語轉(zhuǎn)中文,韓語轉(zhuǎn)中文,日語轉(zhuǎn)韓語等,這個(gè)包便是translate,而且使用方便,翻譯準(zhǔn)確率還可以!
支持語言范圍
主要覆蓋語種
- 亞洲語言:中文(簡/繁)、日語、韓語、越南語、泰語、印地語、印尼語、馬來語、菲律賓語等35。
- 歐洲語言:英語、法語、德語、西班牙語、葡萄牙語、意大利語、荷蘭語、波蘭語、俄語、烏克蘭語、土耳其語等516。
- 中東與非洲語言:阿拉伯語、希伯來語、波斯語、烏爾都語等5。
- 其他語言:匈牙利語、哈薩克語、印度語等16。
語言總量
支持超過 40 種語言互譯,覆蓋全球主流語種5。
語言參數(shù)格式
使用時(shí)可選擇以下兩種參數(shù)格式指定語言:
- 全稱(如
"Chinese"、"Japanese") - 語言代碼(如
"ZH"、"JA"),部分語言支持細(xì)分代碼(如英語"EN-US")314。
示例代碼:
from translate import Translator
# 中文→英語
Translator(from_lang="Chinese", to_lang="English").translate("你好")
# 中文→日語(代碼形式)
Translator(from_lang="ZH", to_lang="JA").translate("你好")
例如:
| from_lang | to_lang |
|---|---|
| english | chinese |
| i need you | 我需要你 |
| Japanese | chinese |
| 今日の天気はどうですか? | 今天天氣怎么樣? |
| Japanese | Korean |
| 今日の天気はどうですか? | ?? ??? ?????? |
注意:如果不指定from_lang屬性,則默認(rèn)為english,to_lang屬性必須指定一種輸出語言,否則會報(bào)錯(cuò)。
文件翻譯實(shí)例(翻譯結(jié)果輸出文件)
該程序讀取指定的文本文件,并將其中的文本內(nèi)容(英文)翻譯成目標(biāo)語言(中文)。如果一行字符數(shù)超過500,則將其分割成更小的部分進(jìn)行翻譯。最終,將翻譯結(jié)果寫入新的文件,并顯示翻譯結(jié)果文件的路徑。如果指定的文件路徑不存在,則會顯示相應(yīng)的提示信息。用戶需要輸入要翻譯的文本文件的路徑。
下面是代碼
注意下面的代碼使用了一個(gè)第三方庫,需要你在cmd中輸入:pip install translate,下載這個(gè)第三方庫。
from translate import Translator
import os
def translate_text(text):
translator = Translator(to_lang="zh")
translation = translator.translate(text)
return translation
def translate_file(file_path):
# 檢查文件路徑是否存在
if os.path.isfile(file_path):
# 打開文本文件并讀取內(nèi)容
with open(file_path, "r", encoding="utf-8") as file:
lines = file.readlines()
# 初始化結(jié)果列表
translations = []
# 逐行翻譯文本
for line in lines:
# 如果行的字符數(shù)超過500,將其分割成更小的部分進(jìn)行翻譯
if len(line) > 500:
# 按逗號分割行
segments = line.split(",")
for segment in segments:
# 翻譯段落
translation = translate_text(segment.strip())
# 追加到結(jié)果列表中
translations.append(translation)
else:
# 翻譯行
translation = translate_text(line.strip())
# 追加到結(jié)果列表中
translations.append(translation)
# 將翻譯結(jié)果寫入新的文件
translated_file_path = "translated_" + os.path.basename(file_path)
with open(translated_file_path, "w", encoding="utf-8") as file:
file.write("\n".join(translations))
print("文件翻譯完成,翻譯結(jié)果已寫入文件: " + translated_file_path)
else:
print("指定的文件路徑不存在")
# 輸入要翻譯的文本文件路徑
file_path = input("請輸入要翻譯的文本文檔的路徑: ")
translate_file(file_path)
給大家展示一下效果:
如圖是要翻譯的文本文檔:

它的路徑為D:\\123.txt.
接下來運(yùn)行程序

當(dāng)程序運(yùn)行成功后,就可以在 包含上面代碼的.py文件所在的目錄看到存儲翻譯結(jié)果的文本文檔了
如圖:

translated_123.txt就是了。
總結(jié)
translate庫,將指定的英文文本文件翻譯成中文,如果遇到超過500字符的行,它會自動(dòng)分割并逐段翻譯,然后將所有翻譯結(jié)果寫入新文件,用戶需提供文件路徑,程序會檢查文件是否存在,并在成功翻譯后顯示結(jié)果文件的位置
到此這篇關(guān)于Python使用translate庫實(shí)現(xiàn)多語種互相翻譯的文章就介紹到這了,更多相關(guān)Python用translate實(shí)現(xiàn)中英等互譯內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于torch.optim的靈活使用詳解(包括重寫SGD,加上L1正則)
今天小編就為大家分享一篇關(guān)于torch.optim的靈活使用詳解(包括重寫SGD,加上L1正則),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
基于python requests selenium爬取excel vba過程解析
這篇文章主要介紹了基于python requests selenium爬取excel vba過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
Python運(yùn)算符之成員運(yùn)算符(in/not in)的使用場景詳解
這篇文章主要探索Python成員運(yùn)算符(in/not in)的使用場景與優(yōu)化技巧,提升代碼效率與質(zhì)量,掌握核心概念、應(yīng)用場景與常見問題解決方案,助你成為Python高手,需要的朋友可以參考下2026-05-05
Python extract及contains方法代碼實(shí)例
這篇文章主要介紹了Python extract及contains方法代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09
python獲取beautifulphoto隨機(jī)某圖片代碼實(shí)例
python獲取beautifulphoto隨機(jī)某圖片代碼實(shí)例,大家參考使用吧2013-12-12
Python?UserWarning:?Glyph?missing?from?font(s)?DejaVu?
這篇文章主要介紹了Python?UserWarning:?Glyph?missing?from?font(s)?DejaVu?Sans警告及解決方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2026-01-01
Python OpenCV處理圖像之圖像像素點(diǎn)操作
這篇文章主要為大家詳細(xì)介紹了Python OpenCV處理圖像之圖像像素點(diǎn)操作,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
Python隊(duì)列RabbitMQ 使用方法實(shí)例記錄
這篇文章主要介紹了Python隊(duì)列RabbitMQ 使用方法,結(jié)合實(shí)例形式分析了Python隊(duì)列RabbitMQ創(chuàng)建隊(duì)列發(fā)送消息與創(chuàng)建消費(fèi)者消費(fèi)信息相關(guān)操作技巧,需要的朋友可以參考下2019-08-08
python實(shí)現(xiàn)數(shù)組平移K位問題
這篇文章主要介紹了python實(shí)現(xiàn)數(shù)組平移K位問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02

