汉字拼音转换工具(Python 版)

将汉字转为拼音。可以用于汉字注音、排序、检索(Russian translation) 。

License: MIT license

Python version: 2.7, pypy, pypy3, 3.4, 3.5, 3.6, 3.7, 3.8

根据词组智能匹配最正确的拼音。

支持多音字。

简单的繁体支持, 注音支持。

支持多种不同拼音/注音风格。

$ pip install pypinyin

Python 3(Python 2 下把 '中心' 替换为 u'中心' 即可):

>>> from pypinyin import pinyin, lazy_pinyin, Style

>>> pinyin('中心')

[['zhōng'], ['xīn']]

>>> pinyin('中心', heteronym=True) # 启用多音字模式

[['zhōng', 'zhòng'], ['xīn']]

>>> pinyin('中心', style=Style.FIRST_LETTER) # 设置拼音风格

[['z'], ['x']]

>>> pinyin('中心', style=Style.TONE2, heteronym=True)

[['zho1ng', 'zho4ng'], ['xi1n']]

>>> pinyin('中心', style=Style.TONE3, heteronym=True)

[['zhong1', 'zhong4'], ['xin1']]

>>> pinyin('中心', style=Style.BOPOMOFO) # 注音风格

[['ㄓㄨㄥ'], ['ㄒㄧㄣ']]

>>> lazy_pinyin('中心') # 不考虑多音字的情况

['zhong', 'xin']

注意事项 :

拼音结果不会标明哪个韵母是轻声,轻声的韵母没有声调或数字标识(使用 5 标识轻声的方法见 文档 )。

无声调相关拼音风格下的结果会使用 v 表示 ü (使用 ü 代替 v 的方法见 文档 )。

命令行工具:

$ pypinyin 音乐

yīn yuè

$ pypinyin -h

项目代码开发方面的问题可以看看 开发文档 。

目前是通过词组拼音库的方式来解决多音字问题的。如果出现拼音有误的情况,

可以自定义词组拼音来调整词语中的拼音:

>>> from pypinyin import Style, pinyin, load_phrases_dict

>>> pinyin('步履蹒跚')

[['bù'], ['lǚ'], ['mán'], ['shān']]

>>> load_phrases_dict({'步履蹒跚': [['bù'], ['lǚ'], ['pán'], ['shān']]})

>>> pinyin('步履蹒跚')

[['bù'], ['lǚ'], ['pán'], ['shān']]

详见 文档 。

>>> from pypinyin import Style, pinyin

>>> pinyin('下雨天', style=Style.INITIALS)

[['x'], [''], ['t']]

因为根据 《汉语拼音方案》 ,

y,w,ü (yu) 都不是声母。

声母风格(INITIALS)下,“雨”、“我”、“圆”等汉字返回空字符串,因为根据

《汉语拼音方案》 ,

y,w,ü (yu) 都不是声母,在某些特定韵母无声母时,才加上 y 或 w,而 ü 也有其特定规则。 —— @hotoo

如果你觉得这个给你带来了麻烦,那么也请小心一些无声母的汉字(如“啊”、“饿”、“按”、“昂”等)。

这时候你也许需要的是首字母风格(FIRST_LETTER)。 —— @hotoo

如果觉得这个行为不是你想要的,就是想把 y 当成声母的话,可以指定 strict=False ,

这个可能会符合你的预期:

>>> from pypinyin import Style, pinyin

>>> pinyin('下雨天', style=Style.INITIALS)

[['x'], [''], ['t']]

>>> pinyin('下雨天', style=Style.INITIALS, strict=False)

[['x'], ['y'], ['t']]

如果对拼音的准确性不是特别在意的话,可以通过设置环境变量 PYPINYIN_NO_PHRASES

和 PYPINYIN_NO_DICT_COPY 来节省内存。

详见 文档

更多 FAQ 详见文档中的

FAQ 部分。

hotoo/pinyin: 汉字拼音转换工具 Node.js/JavaScript 版。

python 拼音汉字和识字,python-pinyin相关推荐

  1. python 拼音地名对应关系,使用Python的http.server实现一个简易的Web Api对外提供HanLP拼音转换服务...

    由于采集省市区镇数据需要对地名进行拼音转换,由于第三方高准确度接口对IP进行了限制,处理大量数据变得异常缓慢. 使用了一个折中的办法,省市区 3级(3千+)用高准确度接口(几乎没有拼错的地名),镇级( ...

  2. 利用python实现汉字转拼音的2种方法

    python实现汉字转拼音的2种方法 在浏览博客时,偶然看到了用python将汉字转为拼音的第三方包,但是在实现的过程中发现一些参数已经更新,现在将两种方法记录一下. xpinyin 在一些博客中看到 ...

  3. python将汉字转化为拼音

    python将汉字转化为拼音 安装 依赖python包:pypinyin 直接pip install pypinyin即可 常用方法及场景案例 from pypinyin import pinyin, ...

  4. python编程输出汉字_课内资源 - 基于Python的拼音汉字转换程序

    1.实验内容利用统计语言模型实现拼音汉字转换 输入:拼音串,输出:对应的汉字串 给定10000字的测试语料,测试音字转换的准确率 针对音字转换结果中存在的问题给出具体分析 以图表的形式表示上述结果 2 ...

  5. 【Python】使用python实现汉字转拼音(2018.12更新)

    在浏览博客时,偶然看到了用python将汉字转为拼音的第三方包,但是在实现的过程中发现一些参数已经更新,现在将两种方法记录一下. xpinyin 在一些博客中看到,如果要转化成带音节的拼音,需要传递参 ...

  6. python获取汉字拼音查询翻译器_Python 返回汉字的汉语拼音

    后来想到自己Delphi有一个获得拼音的代码.于是找了出来.研究了一下代码如下: 复制代码 代码如下: function get_hz_pywb(hzstr: string; pytype: inte ...

  7. Python拼音转汉字

    拼音转汉字 首先导入拼音转汉字的包pinyin_2_hanzi,测试程序如下: def pinyin_2_hanzi(pinyinList):from Pinyin2Hanzi import Defa ...

  8. 学点实用工作小技巧【Python】汉字转拼音、繁体字和简体字互转、提取字符串中的中文(英文)、判断是否纯中文(英文)

    大家早上好,本人姓吴,如果觉得文章写得还行的话也可以叫我吴老师.欢迎大家跟我一起走进数据分析的世界,一起学习! 感兴趣的朋友可以关注我或者我的数据分析专栏,里面有许多优质的文章跟大家分享哦. 前言 又 ...

  9. 基于Python的拼音汉字转换程序

    1.实验内容 利用统计语言模型实现拼音汉字转换 输入:拼音串,输出:对应的汉字串 给定10000字的测试语料,测试音字转换的准确率 针对音字转换结果中存在的问题给出具体分析 以图表的形式表示上述结果 ...

最新文章

  1. 【美国斯坦福大学人工智能研究院:人工智能当以人为本】
  2. tcp的无延时发送_腾讯网红程序员,详解带宽、延时、吞吐率、PPS 这些都是啥?...
  3. css 链接悬浮动画
  4. Flex与javascript通信
  5. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ 记录日志
  6. 结构体符号重载(简单版+手动扩栈方法)
  7. java-多线程安全问题
  8. ACM 学习笔记(五) 动态规划
  9. thinkphp tp 框架如何查看版本
  10. Python连接redis实现有序队列queue先进先出/后进先出
  11. 【大数据】城市公交网络分析与可视化(四):绘制城市公交(地铁)线路图
  12. AI 之父 | 图灵荣登 50 英镑钞票,荣耀比肩牛顿达尔文!
  13. 任志远先生,庄振宏先生就任新加坡区块链技术基金会理事
  14. 世界崩塌前要写下游戏心得(持续更新)
  15. (免费分享)基于javaweb,ssm旅游景点预定系统
  16. ElasticSearch系列03:ES的数据类型
  17. HTML人头像变形了,关于Motion Morph(动态头像变形)的使用
  18. 【汇编小白】关于masm5.0 显示 Unable to open input file
  19. JAVA程序员平常加班严重, 如何有效率的提升自己?
  20. Android桌面小组件时钟实现

热门文章

  1. 【Machine Learning】【Andrew Ng】- notes(Week 2: Computing Parameters Analytically)
  2. telnet与http
  3. 2. WordCount案例实操
  4. ASP.NET + MVC5 入门完整教程五 --- Razor (模型与布局)
  5. w3school没有java的教程_javafx w3school教程
  6. linux 设备文件动态,使用 udev 高效、动态地管理 Linux 设备文件
  7. Mac 下百度网盘如何进行加速? 使用Aria2GUI
  8. 达内月考题库python_达内JSD1412第一次月考试题及答案..
  9. JSD-2204-酷鲨商城(管理商品模块)-Day02
  10. 熔喷料熔体流动速率仪熔喷布熔指仪聚丙烯熔融指数仪 洛克仪器 Labverse