使用Python的translate库实现英译中翻译

该程序读取指定的文本文件,并将其中的文本内容(英文)翻译成目标语言(中文)。如果一行字符数超过500,则将其分割成更小的部分进行翻译。最终,将翻译结果写入新的文件,并显示翻译结果文件的路径。如果指定的文件路径不存在,则会显示相应的提示信息。用户需要输入要翻译的文本文件的路径。

下面是代码

注意下面的代码使用了一个第三方库,需要你在cmd中输入:pip install translate,下载这个第三方库。

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):
        # 打开文本文件并读取内容
        with open(file_path, "r", encoding="utf-8") as file:
            lines = file.readlines()

        # 初始化结果列表
        translations = []

        # 逐行翻译文本
        for line in lines:
            # 如果行的字符数超过500,将其分割成更小的部分进行翻译
            if len(line) > 500:
                # 按逗号分割行
                segments = line.split(",")
                for segment in segments:
                    # 翻译段落
                    translation = translate_text(segment.strip())
                    # 追加到结果列表中
                    translations.append(translation)
            else:
                # 翻译行
                translation = translate_text(line.strip())
                # 追加到结果列表中
                translations.append(translation)

        # 将翻译结果写入新的文件
        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("文件翻译完成,翻译结果已写入文件: " + translated_file_path)
    else:
        print("指定的文件路径不存在")

# 输入要翻译的文本文件路径
file_path = input("请输入要翻译的文本文档的路径: ")
translate_file(file_path)

给大家展示一下效果:

如图是要翻译的文本文档:

 它的路径为D:\\123.txt.

接下来运行程序

当程序运行成功后,就可以在 包含上面代码的.py文件所在的目录看到存储翻译结果的文本文档了

如图:

translated_123.txt就是了。 

物联沃分享整理
物联沃-IOTWORD物联网 » 使用Python的translate库实现英译中翻译

发表评论