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. json对象转为url参数_Day48_Ajaxamp;Json
  2. 如何摆脱穷打工的命?
  3. LCD显示异常分析——开机闪现花屏【转】
  4. datetime 取分钟_如何仅从DateTime获取小时和分钟
  5. nodejs模块笔记
  6. 第三次学JAVA再学不好就吃翔(part109)--LineNumberReader类
  7. Android之状态栏通知Notification、NotificationManager详解
  8. 算法设计与分析_算法设计与分析(第2版)第2章分治策略回顾
  9. OpenSSL原理与实现
  10. mysql system账户密码忘记了_MySQL数据库root账户密码忘记两种处理方法(保有效)...
  11. Linux vsFTPd服务详解——文件加密传输配置
  12. [PTA]实验7-2-5 判断上三角矩阵
  13. 中国的程序员大部分都是diao丝,说白了就是农村进城打工的,有背景或有钱的基本都不会做程序员。
  14. 怎么去除微博图片的水印?
  15. Java开发对接招行一网通支付功能的总结
  16. 基于若依框架(前后端分离)-新写前端Vue页面
  17. 甘特图:项目进度管理的必备工具
  18. Win7系统服务优化攻略
  19. OpenHarmony ≠ HarmonyOS
  20. 什么?RecyclerView中获取点击位置的接口被废弃了?

热门文章

  1. prison break
  2. windows 两台电脑通过移动热点传输文件
  3. 五 常见的计算机故障有哪些,六大常见的电脑故障原因
  4. OSPF之Stub区域
  5. Logistic 回归的决策边界
  6. 基于jenkins进行定制化开发
  7. iphone与计算机连接,苹果usb怎么与电脑连接_苹果怎么设置与电脑连接的图文步骤...
  8. 【原创】笔记本键盘故障的心得一二
  9. (九)ThunderbirdMail配置QQ邮件服务
  10. 百度url提交入口 百度网站收录提交入口网址