python实现简体中文和繁体相互转换

Posted zhouxinfei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python实现简体中文和繁体相互转换相关的知识,希望对你有一定的参考价值。

1. opencc-python

如果目录上的链接被屏蔽了,请手动复制 https://pypi.python.org/pypi/opencc-python/

首先介绍opencc的python实现库,它具有安装简单,翻译准确,使用方便等优点。对于我们的需求完全能够胜任。使用步骤如下:

1.1 在terminal中安装opencc-python

pip install opencc-python

 

如果安装中出现了如下错误:

 
技术分享图片
安装opencc-python出错信息

请先下载 distribute_setup.zip,解压缩后,把distribute_setup.py放到C:\Python27\Lib。然后再执行pip命令。

1.2 使用代码:

# -*- coding: utf8 -*-
import opencc
cc = opencc.OpenCC(t2s)
print cc.convert(uOpen Chinese Convert(OpenCC)「開放中文轉換」,是一個致力於中文簡繁轉換的項目,提供高質量詞庫和函數庫(libopencc)。)

 

输出为:

Open Chinese Convert(OpenCC)「开放中文转换」,是一个致力于中文简繁转换的项目,提供高质量词库和函数库(libopencc)。

 


这里有四种内建的opencc翻译配置:

  • t2s - 繁体转简体(Traditional Chinese to Simplified Chinese)
  • s2t - 简体转繁体(Simplified Chinese to Traditional Chinese)
  • mix2t - 混合转繁体(Mixed to Traditional Chinese)
  • mix2s - 混合转简体(Mixed to Simplified Chinese)

2. zhtools

简要步骤如下:

2.1 中文简体和繁体转换所需Python库:zh_wiki.py(在原作者的库中新添近一倍词库), langconv

2.2 使用代码

from langconv import *

def simple2tradition(line):
    #将简体转换成繁体
    line = Converter(zh-hant).convert(line.decode(utf-8))
    line = line.encode(utf-8)
    return line

def tradition2simple(line):
    # 将繁体转换成简体
    line = Converter(zh-hans).convert(line.decode(utf-8))
    line = line.encode(utf-8)
    return line

 

该方案的优点是轻量,使用方便,简洁,但又可能翻译不太准确,例如,原作者的库是这样翻译成繁体的:
\前後,後羿\
而准确的繁体是这样的:
\前後,后羿\

3. 总结

最终项目还是采用第二种方案,因为在库填充后,准确度还可以的情况下,第二种方案轻量,对游戏不会造成不可预见的影响。当然第一种方案是非常成熟和准确的,无论作为研究和作品工具都非常不错的选择。





以上是关于python实现简体中文和繁体相互转换的主要内容,如果未能解决你的问题,请参考以下文章

[内码]您是如何实现简体中文到繁体中文快速转换的? - PHP进阶讨论

windows使用opencc中文简体和繁体互转

windows使用opencc中文简体和繁体互转

windows使用opencc中文简体和繁体互转

C#利用微软自带库进行中文繁体和简体之间的转换的代码

SnowNLP:?中文分词?词性标准?提取文本摘要,?提取文本关键词,?转换成拼音?繁体转简体的 处理中文文本的Python3 类库