将汉字转为拼音,可以用于批量汉字注音、文字排序、拼音检索文字等常见场景。现在互联网上有许多拼音转换工具,基于Python的开源模块也不少,今天给大家介绍一个功能特性最多的模块: pypinyin ,它支持以下特性:
-
1. 根据词组智能匹配最正确的拼音。
-
2. 支持多音字。
-
3. 简单的繁体支持, 注音支持。
-
4. 支持多种不同拼音/注音风格。
-
5. 命令行工具一键转化
1、基本使用
最普通的拼音转化方法如下:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style pinyin('中心') # [['zhōng'], ['xīn']]
识别多音字:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style pinyin('中心', heteronym=True) # 启用多音字模式 # [['zhōng', 'zhòng'], ['xīn']]
设置输出风格,只识别首字母:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style pinyin('中心', style=Style.FIRST_LETTER) # 设置拼音风格 # [['z'], ['x']]
修改音调输出位置,在相应字母的后面显示音调,或者拼音的最后显示音调:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style # TONE2 在相应字母的后面显示音调 pinyin('中心', style=Style.TONE2, heteronym=True) # [['zho1ng', 'zho4ng'], ['xi1n']] # TONE3 拼音的最后显示音调 pinyin('中心', style=Style.TONE3, heteronym=True) # [['zhong1', 'zhong4'], ['xin1']]
不考虑多音字的情况:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style lazy_pinyin('中心') # 不考虑多音字的情况 # ['zhong', 'xin']
不使用v来代替ü:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style lazy_pinyin('战略', v_to_u=True) # 不使用 v 表示 ü # ['zhan', 'lüe']
标记轻声:
# Python编程学习圈 from pypinyin import pinyin, lazy_pinyin, Style # 使用 5 标识轻声 lazy_pinyin('衣裳', style=Style.TONE3, neutral_tone_with_five=True) # ['yi1', 'shang5']
使用命令行一键识别拼音:
# Python编程学习圈 python -m pypinyin 音乐 # yīn yuè
2.高级使用
自定义拼音显示风格
我们可以通过 register() 来实现自定义拼音风格的需求:
from pypinyin import lazy_pinyin from pypinyin.style import register @register('kiss') def kiss(pinyin, **kwargs): return '
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/10013/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取