前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 玩转《生僻字》

Python 玩转《生僻字》

作者头像
TTTEED
发布2020-07-09 11:24:25
7280
发布2020-07-09 11:24:25
举报

茕茕孑立 沆瀣一气 踽踽独行 醍醐灌顶 绵绵瓜瓞 奉为圭臬 龙行龘龘 犄角旮旯 娉婷袅娜 涕泗滂沱 呶呶不休 不稂不莠

这首《生僻字》,考验的是“语文”硬实力。倘若实力不够,其实可以拿Python来凑,毕竟库多!今天就来说一个有意思的pypinyin库,名字很直白,是Python版的拼音库,用来将汉字转为拼音。

先来看下代码运行效果,比较喜欢将结果print到命令行的样式:

当然,正规的操作是读取汉字txt文本,生成注音版txt文本:

思路

很简单,拼音库可以把汉字转化为拼音,那我们要做的就是读取文本,获取拼音,最后将文本和拼音重新拼接。代码也不难,基本围绕字符串和列表进行拼接操作,比较适合新手朋友拿来练手。

pypinyin库

首先是安装:pip install pypinyin

装好后引入模块:from pypinyin import pinyin

调用 pinyin(“生僻字”) 即可得到拼音列表 [[‘shēng’], [‘pì’], [‘zì’]]

读写txt文本

算是读写txt文件的简单应用:

代码语言:javascript
复制
txt_name = "生僻字"
with open("%s.txt"%txt_name,encoding="UTF-8-sig") as f:
    content = f.read()
    input_str = content
代码语言:javascript
复制
result = transfer(input_str)#对读取到的txt进行注音操作

with open("%s_拼音.txt"%txt_name,'w',encoding='UTF-8-sig') as m:
    m.write(result)

拼接

首先会对读入的文本进行整理,去除多余的空格,将字符串中的汉字与列表中的拼音一一对应并拼接。

由于中文字符是占两个字节,以及读写txt时也会涉及到编码格式,这部分的代码费了些功夫,只能说勉强做到格式整齐吧。

回顾

最初接触一个读取剪贴板内容的pyperclip模块,琢磨对剪贴板中字符串如何操作。恰巧听到《生僻字》,觉得既然逐字查拼音是个麻烦事,何不通过Python来批量添加拼音呢?很幸运,还真有大佬写了这个pypinyin库,在Github上也已有1500多颗星了~

昨天完成的小代码,是对剪贴板中复制的内容添加拼音,感觉实用性不强且操作不方便,故今天修改为读取txt文本生成注音版本。

代码下载

后台回复 拼音 获取下载链接

最后再放个《离骚》文本的注音,先txt文本:

以及偏爱的命令行格式:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 TTTEED 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 读写txt文本
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档