python实现简体中文和繁体相互转换
1. opencc-python
如果目录上的链接被屏蔽了,请手动复制 https://pypi.python.org/pypi/opencc-python/
首先介绍opencc的python实现库,它具有安装简单,翻译准确,使用方便等优点。对于我们的需求完全能够胜任。使用步骤如下:
1.1 在terminal中安装opencc-python
pip install 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(u'Open 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实现简体中文和繁体相互转换的更多相关文章
- 【Unity3D游戏开发】Application.systemLanguage无法区分简体中文和繁体中文 (二六)
游戏发布,语言本地化需要繁体中文和简体中文 iOS8版本之前没问题,iOS9上无法正常识别这两种语言 原因是在iOS9上,Unity通过Application.systemLanguage返回的简体中 ...
- 转换简体中文和繁体中文 cconv-0.6.2 for win32 static
dos状态下 chcp 65001 echo "转换简体中文和繁体中文"|cconv -f utf-8 -t utf8-tw 显示 "轉換簡體中文和繁體中文" ...
- Python RGB 和HSV颜色相互转换
转自:http://outofmemory.cn/code-snippet/1002/Python-RGB-HSV-color-together-switch Python RGB 和HSV颜色相互转 ...
- python datetime offset-aware与offset-navie相互转换
python datetime offset-aware与offset-navie相互转换 2016年11月13日 16:20:43 阅读数:2393 有时,我们使用python 的datetime模 ...
- [转]TrueType(TTF)字体文件裁剪(支持简体中文,繁体中文TTF字体裁剪)
原文入口: TTF字体文件裁剪(支持简体中文,繁体中文TTF字体裁剪) 对于TrueType(TTF)字体格式的介绍可以看: https://www.cnblogs.com/slysky/p/1131 ...
- Python实现字符串与数组相互转换功能示例
Python实现字符串与数组相互转换功能示例 本文实例讲述了Python实现字符串与数组相互转换功能.分享给大家供大家参考,具体如下: 字符串转数组 str = '1,2,3' arr = s ...
- Python 实现列表与二叉树相互转换并打印二叉树封装类-详细注释+完美对齐
# Python 实现列表与二叉树相互转换并打印二叉树封装类-详细注释+完美对齐 from binarytree import build import random # https://www.cn ...
- Python 实现列表与二叉树相互转换并打印二叉树16-详细注释+完美对齐-OK
# Python 实现列表与二叉树相互转换并打印二叉树16-详细注释+完美对齐-OK from binarytree import build import random # https://www. ...
- python实现中文字符繁体和简体中文转换-乾颐堂
需求:把中文字符串进行繁体和简体中文的转换: 思路:引入简繁体处理库,有兴趣的同学可以研究一下内部实现,都是python写的 1.下载zh_wiki.py及langconv zh_wiki.py:ht ...
随机推荐
- android decorView详解
摘要 一.DecorView为整个Window界面的最顶层View. 二.DecorView只有一个子元素为LinearLayout.代表整个Window界面,包含通知栏,标题栏,内容显示栏三块区域. ...
- BASE64 的加密与解密
package com.suning.security; import java.io.IOException; import sun.misc.BASE64Decoder; import sun.m ...
- 如何通过jQuery获取一个没有定高度的元素---------的自适应高度(offsetHeight的正确使用方法)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Mongodb3.6 快速入门(一)
一.安装 官网下载地址 文章中用的3.6community server 64 位. 安装完成后的目录如下: 二.启动Mongodb 有多种方式可以启动Mongodb,但在实际项目中,主要还是通过配置 ...
- Eclipse RCP中超长任务单线程,异步线程处理
转自:http://www.blogjava.net/mydearvivian/articles/246028.html 在RCP程序中,常碰到某个线程执行时间比较很长的情况,若处理不好,用户体验度是 ...
- [ SSH框架 ] Hibernate框架学习之四(JPA)
一.JPA概述以及它和Hibernate之间的关系 1.1.Hibernate 概述 JPA Java Persistence API,是EJB3规范中负责对象持久化的应用程序编程接口(ORM接口), ...
- mac上Python多版本共存
http://www.cnblogs.com/mingaixin/p/6295963.html https://www.cnhzz.com/pyenv_virtualenv_virtaulenvwra ...
- vfd折腾(二)
这篇是前期程序部分,主要讲驱动pt6311的程序 电路见上一篇博文 #ifndef PT6311_H #define PT6311_H #include "sys.h" #incl ...
- css初始化标签属性--源码
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, p, blockquote ...
- 使用Android Studio Gradle实现友盟多渠道打包
最新项目中要求在友盟后台看到不同渠道的统计,Android大大小小的应用市场要几百个,要一个一个手工打包那一天也干不完,还好是有大牛的,弄出了好多解决方法,就Gradle做一下记录和分享,首先看一些理 ...