Python实现汉字转换拼音
Posted 幸福丶如此
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python实现汉字转换拼音相关的知识,希望对你有一定的参考价值。
有两个模块都可以实现,一个是 xpinyin
模块,还有一个是pypinyin
模块,xpinyin
模块只是将汉字转换为拼音字母,汉字的拼音字母是没有音调, pypinyin
模块不仅将汉字转换为拼音字母,而且汉字的拼音字母是没有音调也都可以输出出来!
一、xpinyin
模块
1、安装 xpinyin 模块
pip install xpinyin
2、基本使用
from xpinyin import Pinyin
name = '金领冠珍护405听3'
p = Pinyin()
##转换为小写拼音,默认以 - 为分隔
print(p.get_pinyin(name)) #jin-ling-guan-zhen-hu-405-ting-3
#转换为小写拼音,指定分隔符为空
print(p.get_pinyin(name,'')) #jinlingguanzhenhu405ting3
#转换为小写拼音,指定分隔符为空格
print(p.get_pinyin(name,' ')) #jin ling guan zhen hu 405 ting 3
#显示汉字的一个字母的大写首字母
print(p.get_initial('金')) #J
#显示多个汉字第一个字母的大写首字母,默认以 - 为分隔
print(p.get_initials(name)) #J-L-G-Z-H-4-0-5-T-3
#显示多个汉字第一个字母的大写首字母,指定分隔符为空
print(p.get_initials(name,'')) #JLGZH405T3
#显示多个汉字第一个字母的大写首字母,指定分隔符为空格
print(p.get_initials(name,' ')) #J L G Z H 4 0 5 T 3
二、pypinyin
模块
1、安装 pypinyin 模块
pip install pypinyin
2、基本使用
from pypinyin import pinyin as py
name = '金领冠珍护405听3'
print(py(name))
#运行结果
[['jīn'], ['lǐng'], ['guān'], ['zhēn'], ['hù'], ['405'], ['tīng'], ['3']]
transform_result = py(name)
print(type(transform_result))
for i in transform_result:
for k in i:
print(k,end=' ')
#运行结果
<class 'list'>
jīn lǐng guān zhēn hù 405 tīng 3
########多音字########
from pypinyin import pinyin as py
print('"中"的拼音:',py('中',heteronym=True))
print('"中国"的拼音',py('中国',heteronym=True))
print('"金领冠珍护405听3"的拼音',py('金领冠珍护405听3',heteronym=True))
#运行结果
"中"的拼音: [['zhōng', 'zhòng']]
"中国"的拼音 [['zhōng'], ['guó']]
"金领冠珍护405听3"的拼音 [['jīn', 'jìn'], ['lǐng'], ['guān', 'guàn'], ['zhēn'], ['hù'], ['405'], ['tīng', 'yǐn', 'yí'], ['3']]
########不带音调的拼音########
from pypinyin import pinyin as py,lazy_pinyin as lpy, Style
print(lpy('中'))
print(lpy('中国'))
print(lpy('金领冠珍护405听3',style=Style.TONE)) #默认为Style.NORMAL
#运行结果
['zhong']
['zhong', 'guo']
['jīn', 'lǐng', 'guān', 'zhēn', 'hù', '405', 'tīng', '3']
以上是关于Python实现汉字转换拼音的主要内容,如果未能解决你的问题,请参考以下文章