简体中文转繁体的python简单实现
0. 背景
代理的游戏是一个简体中文的版本,为了能使游戏成为一个拥有繁体中文的港澳台版本。其中的定制的简体中文(占绝大多数)是找台湾当地人翻译的,但是其中有一个语音识别的功能,由于是并非定制的内容,所以找了两个简体中文转繁体的简单实现。
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
参考博客《python实现中文字符繁体和简体中文转换》,简要步骤如下:
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 linedef tradition2simple(line):# 将繁体转换成简体line = Converter('zh-hans').convert(line.decode('utf-8'))line = line.encode('utf-8')return line
该方案的优点是轻量,使用方便,简洁,但又可能翻译不太准确,例如,原作者的库是这样翻译成繁体的:
\前後,後羿\
而准确的繁体是这样的:
\前後,后羿\
3. 总结
最终项目还是采用第二种方案,因为在库填充后,准确度还可以的情况下,第二种方案轻量,对游戏不会造成不可预见的影响。当然第一种方案是非常成熟和准确的,无论作为研究和作品工具都非常不错的选择。
目录
- 背景
- opencc-python
- zhtools
- 总结
简体中文转繁体的python简单实现相关推荐
- .Net/C#: 一个将在线简体中文网页转为繁体中文页简单方法
/* 一个将"任意"在线简体中文网页转为繁体中文页简单方法 以前都写在 Aspx 的 Codebehind 里用 WebRequest 抓别人的网页 ASP 时代用 XMLHTTP ...
- opencc解决简体中文与繁体中文转换问题【python】
1.Opencc-python 今天学习文本分析中偶然想到繁体中文要如何分割的问题,于是联想到将繁体中文先转换为简体中文,查过网上的资料后发现比较好用的是opencc-python,以及下载zh_wi ...
- java获取系统语言(区分简体中文和繁体中文)
2019独角兽企业重金招聘Python工程师标准>>> 之前做android应用时遇到过一个问题,就是根据语言的不同而显示不同的内容 网上很多代码都是错误的,起码无法区分简体和繁体, ...
- python中年大叔学编程_中年大叔学编程-Python简单操作文件
原标题:中年大叔学编程-Python简单操作文件 在计算机中,经常打交道的就是各种文档,用得比较多的软件就是office和记事本来操作文件,那么我们试试用Python来简单读写文件. Open函数的用 ...
- (一)python简单应用
(一)python简单应用 自学之后运用循环语句和判断语句所解决的几个简单问题: 1.实现1到10的和: x = 1 he = 0 while x < 11:if x == 7:passelse ...
- python 简单图像处理(13) 二值图腐蚀和膨胀,开运算、闭运算
原文:http://www.cnblogs.com/xianglan/archive/2010/12/29/1921211.html python 简单图像处理(13) 二值图腐蚀和膨胀,开运算.闭运 ...
- python好学-所有人都说Python 简单易学,为何你觉得难?
记得刚学Python的时候,几乎所有人都说Python 简单易学,而对于编程零基础,只掌握Word和Excel的人来说,感觉真的好难. 学习之前网上的教材看了,Python的书也看了,包括<核心 ...
- python基础代码事例-Python简单基础小程序的实例代码
1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...
- python程序实例教程基础-Python简单基础小程序的实例代码
1 九九乘法表 for i in range(9):#从0循环到8 i += 1#等价于 i = i+1 for j in range(i):#从0循环到i j += 1 print(j,'*',i, ...
- Python 简单入门指北(二)
Python 简单入门指北(二) 2 函数 2.1 函数是一等公民 一等公民指的是 Python 的函数能够动态创建,能赋值给别的变量,能作为参传给函数,也能作为函数的返回值.总而言之,函数和普通变量 ...
最新文章
- 商店选址问题(Floyd)
- OD-困难重重的追踪消息断点
- python全局名称空间_python之名称空间知识点整理
- java xml出错,Java xml出现错误 javax.xml.transform.TransformerException: java.lang.NullPointerException...
- codeforces:CF1604 总结
- Software Project Management之EVM问题的求解
- 虚拟应用DemoApp功能演示详解
- 阿里p3c插件的使用
- KiB、MiB与KB、MB的区别
- WPS标题编号级别,根据上一级自动编号
- 商务云PHP网络验证系统,易如意PHP网络验证系统1.3【开源】+调用模块源码
- MBE清新风格毕业答辩PPT模板
- 请编写一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
- vite打包工具的介绍
- Centos7创建及修改用户名和用户组名
- 21天战拖记——Day21:《小强升职记》学习感受(2014-05-24)
- autojs-获取api接口JSON值
- 单片机课cheng设计求大lao们指jiao
- 起床困难综合症(0x01位运算)
- 远程同步工具 ---- rsync
热门文章
- 《阴阳师·3黑川主》原作:梦枕貘
- 计算机走进画图世界课件,windowsxp走进画图世界教案
- foobar2000在线标签服务器,在Foobar2000播放器中从音乐名获取标签的技巧
- Python的pyhanlp库使用(自然语言识别、姓名)
- Google广告中介(以MoPub广告接入为例)
- HDU4585 Shaolin(treap)
- linux安装so共享动态库文件下载,linux下的共享库(动态库)和静态库
- MFC中TXT文件读写
- 科大讯飞“飞星计划”一面二面面经
- 宜人贷宜人蜂巢金融科技AI实践:蜂巢机器人