Python实现简繁体转换
本文作者:谭 可,中南财经政法大学统计与数学学院
本文编辑:张 猛
技术总编:王子一
Stata&Python云端课程来啦!
为了感谢大家长久以来的支持和信任,爬虫俱乐部为大家送福利啦!!!Stata&Python特惠课程双双上线腾讯课堂~爬虫俱乐部推出了Python编程培训课程、Stata基础课程、Stata进阶课程。报名课程即可加入答疑群,对报名有任何疑问欢迎在公众号后台和腾讯课堂留言哦。我们在这篇推文的最后提供了每门课程的课程二维码,大家有需要的话可以直接扫描二维码查看课程详情并进行购买哦~
中文有两种书写方式,一种是中文简体,一种是中文繁体。如果要完全掌握中文语言的自然语言处理,那么简繁都不可避免。所以,掌握了简体与繁体的转换,往往能够事半功倍。在日常生活中常常会遇到需要把中文字符串进行繁体和简体中文的转换需求,解决方法为引入简繁体处理库,Python支持繁简体转换的库有许多,非常的方便简洁。本文将主要介绍利用Python实现简繁体转换的3种方法。
1、opencc-python
首先介绍opencc中的Python实现库,它具有安装简单,翻译准确,使用方便等优点。对于我们日常的需求完全能够胜任。
pip install opencc-python
t2s - 繁体转简体(Traditional Chinese to Simplified Chinese)
s2t - 简体转繁体(Simplified Chinese to Traditional Chinese)
mix2t - 混合转繁体(Mixed to Traditional Chinese)
mix2s - 混合转简体(Mixed to Simplified Chinese)
import opencc
cc = opencc.OpenCC('t2s')
print(cc.convert(u'Open Chinese Convert(OpenCC)開放中文轉換,是一個致力於中文簡繁轉換的項目,提供高質量詞庫和函數庫(libopencc)。'))
2、zhtools
from langconv import Converter
def convert(text, flag=0): #text为要转换的文本,flag=0代表简化繁,flag=1代表繁化简
rule = 'zh-hans' if flag else 'zh-hant'
return Converter(rule).convert(text)
text1 = '悄悄是别离的笙箫; 夏虫也为我沉默, 沉默是今晚的康桥'
print(convert(text1))
text2 = '悄悄是別離的笙簫; 夏蟲也為我沉默, 沉默是今晚的康橋'
print(convert(text2, 1))
3、zhconv
pip install zhconv
zhconv支持以下地区词的转换:
zh-cn 大陆简体
zh-sg 马新简体(马来西亚和新加坡使用的简体汉字)
zh-tw 台灣正體(台湾正体)
zh-hk 香港繁體(香港繁体)
zh-hans 简体
zh-hant 繁體(繁体)
import zhconv
text = '此去经年,应是良辰好景虚设。便纵有千种风情,更与何人说?'
text1 = zhconv.convert(text, 'zh-hant')
text2 = zhconv.convert(text, 'zh-tw')
text3 = zhconv.convert(text, 'zh-hk')
print('转换为繁体:', text1)
print('转换为台湾正体:', text2)
print('转换为香港繁体:', text3)
转换结果为:
方法2:导入zhconv的convert
from zhconv import convert
text = '此去经年,应是良辰好景虚设。便纵有千种风情,更与何人说?'
text1 = convert(text, 'zh-hant')
print('转换为繁体:', text1)
转换结果为:
4、文档的简繁体转换
利用扩展库python-docx,可以将Word文档中的中文进行转换,简体转换为繁体:
pip install python-docx
这里我们使用zhconv库的方法来将word文档《匆匆》转换为《匆匆》繁体版:
from zhconv import convert
from docx import Document
word = Document('《匆匆》.docx')
for t in word.paragraphs:
t.text = convert(t.text, 'zh-hant')
for i in word.tables:
for p in i.rows:
for h in p.cells:
h.text = convert(h.text, 'zh-hant')
word.save('《匆匆》繁体版.docx')
转换前:
转换后:
腾讯课堂课程二维码
对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
往期推文推荐
Stata与Python交互方法及数据传递
“青铜”爬“王者”
留下想要的变量,你会几种方法?
【爬虫篇】基于selenium爬取美团评论
双标的莱万——足球无关政治?!
Stata处理重复值:duplicates
It's time to send a flower to your lover! 2021各省GDP新鲜出炉爬虫实战-采集全国各省疫情数据
log——为你的操作保驾护航
一行代码教你玩转emoji
票房遇冷的春节档口碑冠军丨《狙击手》影评分析
学习丰县,营造良好营商环境!
大国丢娃图:从川渝到徐州!
丰县“失火”,殃及徐州:股市超跌近30亿!
Unicode转义字符——编码与解码
徐州!徐州!
B站弹幕爬虫——冬奥顶流冰墩墩&雪容融
不会用Stata做描述性统计表?so easy!
丰沛之地:备足姨妈巾
过年啦,用Python绘制一幅属于你的春联吧!
登上爬虫俱乐部“时光机” |上“机”出发 开启一段奇妙之旅【基础篇】查找并输出子字符串的定位
Stata中的小清新命令——添加观测值
PCA(主成分分析法)降维——Python实现
超好用的事件研究法
如何绘制任泽平《鼓励生育基金》的几幅图
Python 第六天——字符串
findname——想要什么找什么
Python字符串之“分分合合”
PDF转docx可批量操作?——wordconvert的小技巧
考研之后,文科生需以“do”躬“do”!
手绘五星兴家国——用Stata绘制五星红旗
关于我们
微信公众号“Stata and Python数据分析”分享实用的Stata、Python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
武汉字符串数据科技有限公司一直为广大用户提供数据采集和分析的服务工作,如果您有这方面的需求,请发邮件到statatraining@163.com,或者直接联系我们的数据中台总工程司海涛先生,电话:18203668525,wechat: super4ht。海涛先生曾长期在香港大学从事研究工作,现为知名985大学的博士生,爬虫俱乐部网络爬虫技术和正则表达式的课程负责人。
此外,欢迎大家踊跃投稿,介绍一些关于Stata和Python的数据处理和分析技巧。
投稿邮箱:statatraining@163.com投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。