python工具——pypinyin 汉字转换拼音

把汉字转成拼音后可以进行深度学习分类,做内容识别

1.安装

pip install pypinyin

将汉字转换为拼音并生成 slug 字符串

import pypinyin
from pypinyin import Style
content = pypinyin.slug('汉语拼音')
print(content)
# E:\python\>python pinyin.py
# han-yu-pin-yin

修改分隔字符串

import pypinyin
from pypinyin import Style
content = pypinyin.slug('汉语拼音',separator=' ')
print(content)
# E:\python>python pinyin.py
# han yu pin yin

启用多音字模式

import pypinyin 
content = pypinyin.pinyin(u'单个', heteronym=True) # heteronym=False 不启用多音字
print(content)
# [['dān', 'chán', 'shàn'], ['gè', 'gàn', 'gě']]

 生成多音名字所有拼音列表


import pypinyin
from icecream import ic
from itertools import product

def load_pinyins(name):
    """通过名字加载拼音列表"""
    pinyins = []
    for char in name:
        pinyins = pinyins + pypinyin.pinyin(char, style=pypinyin.NORMAL, heteronym=True)
    # 通过笛卡尔积找到所有姓和名字的组合 product(*pinyins)
    return set(["".join(pinyins) for pinyins in product(*pinyins)]) 

 style设置拼音音调风格

from pypinyin import pinyin, Style

# (1)Style.TONE3音调显示在末尾
print(pinyin('单个',style=Style.TONE3))
# [['dan1'], ['ge4']]#数字为音调
print(pinyin('单个',style=Style.TONE3,heteronym=True))
# [['dan1', 'chan2', 'shan4'], ['ge4', 'gan4', 'ge3']]#数字为音调

# (2) Style.TONE2音调显示在韵母
print(pinyin('单个',style=Style.TONE2,heteronym=True))
# [['da1n', 'cha2n', 'sha4n'], ['ge4', 'ga4n', 'ge3']]#数字为音调

# (3)Style.TONE音调为手写格式
print(pinyin('单个',style=Style.TONE))
# [['dān'], ['gè']]
print(pinyin('单个',style=Style.TONE,heteronym=True))
# [['dān', 'chán', 'shàn'], ['gè', 'gàn', 'gě']]

# (4)pypinyin.NORMAL不显示音调
print(pinyin(u'单个', heteronym=True,style=pypinyin.NORMAL))
# [['dan', 'chan', 'shan'], ['ge', 'gan']]
print(pinyin(u'单个', style=pypinyin.NORMAL))
# [['dan'], ['ge']]
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值