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简单实现相关推荐

  1. .Net/C#: 一个将在线简体中文网页转为繁体中文页简单方法

    /* 一个将"任意"在线简体中文网页转为繁体中文页简单方法 以前都写在 Aspx 的 Codebehind 里用 WebRequest 抓别人的网页 ASP 时代用 XMLHTTP ...

  2. opencc解决简体中文与繁体中文转换问题【python】

    1.Opencc-python 今天学习文本分析中偶然想到繁体中文要如何分割的问题,于是联想到将繁体中文先转换为简体中文,查过网上的资料后发现比较好用的是opencc-python,以及下载zh_wi ...

  3. java获取系统语言(区分简体中文和繁体中文)

    2019独角兽企业重金招聘Python工程师标准>>> 之前做android应用时遇到过一个问题,就是根据语言的不同而显示不同的内容 网上很多代码都是错误的,起码无法区分简体和繁体, ...

  4. python中年大叔学编程_中年大叔学编程-Python简单操作文件

    原标题:中年大叔学编程-Python简单操作文件 在计算机中,经常打交道的就是各种文档,用得比较多的软件就是office和记事本来操作文件,那么我们试试用Python来简单读写文件. Open函数的用 ...

  5. (一)python简单应用

    (一)python简单应用 自学之后运用循环语句和判断语句所解决的几个简单问题: 1.实现1到10的和: x = 1 he = 0 while x < 11:if x == 7:passelse ...

  6. python 简单图像处理(13) 二值图腐蚀和膨胀,开运算、闭运算

    原文:http://www.cnblogs.com/xianglan/archive/2010/12/29/1921211.html python 简单图像处理(13) 二值图腐蚀和膨胀,开运算.闭运 ...

  7. python好学-所有人都说Python 简单易学,为何你觉得难?

    记得刚学Python的时候,几乎所有人都说Python 简单易学,而对于编程零基础,只掌握Word和Excel的人来说,感觉真的好难. 学习之前网上的教材看了,Python的书也看了,包括<核心 ...

  8. 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, ...

  9. 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, ...

  10. Python 简单入门指北(二)

    Python 简单入门指北(二) 2 函数 2.1 函数是一等公民 一等公民指的是 Python 的函数能够动态创建,能赋值给别的变量,能作为参传给函数,也能作为函数的返回值.总而言之,函数和普通变量 ...

最新文章

  1. 商店选址问题(Floyd)
  2. OD-困难重重的追踪消息断点
  3. python全局名称空间_python之名称空间知识点整理
  4. java xml出错,Java xml出现错误 javax.xml.transform.TransformerException: java.lang.NullPointerException...
  5. codeforces:CF1604 总结
  6. Software Project Management之EVM问题的求解
  7. 虚拟应用DemoApp功能演示详解
  8. 阿里p3c插件的使用
  9. KiB、MiB与KB、MB的区别
  10. WPS标题编号级别,根据上一级自动编号
  11. 商务云PHP网络验证系统,易如意PHP网络验证系统1.3【开源】+调用模块源码
  12. MBE清新风格毕业答辩PPT模板
  13. 请编写一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
  14. vite打包工具的介绍
  15. Centos7创建及修改用户名和用户组名
  16. 21天战拖记——Day21:《小强升职记》学习感受(2014-05-24)
  17. autojs-获取api接口JSON值
  18. 单片机课cheng设计求大lao们指jiao
  19. 起床困难综合症(0x01位运算)
  20. 远程同步工具 ---- rsync

热门文章

  1. 《阴阳师·3黑川主》原作:梦枕貘
  2. 计算机走进画图世界课件,windowsxp走进画图世界教案
  3. foobar2000在线标签服务器,在Foobar2000播放器中从音乐名获取标签的技巧
  4. Python的pyhanlp库使用(自然语言识别、姓名)
  5. Google广告中介(以MoPub广告接入为例)
  6. HDU4585 Shaolin(treap)
  7. linux安装so共享动态库文件下载,linux下的共享库(动态库)和静态库
  8. MFC中TXT文件读写
  9. 科大讯飞“飞星计划”一面二面面经
  10. 宜人贷宜人蜂巢金融科技AI实践:蜂巢机器人