Python开发:利用Pypinyin库输出中文全拼、首拼、音调拼(含现成demo)

from pypinyin import lazy_pinyin, pinyin, Style

datastring = """
你好
""".strip().split()


def getallpinyin(data):
    """返回全部拼音,例如:你好 => nihao"""
    # 获取拼音列表
    pinyin_list = lazy_pinyin(data)
    # 将拼音列表中的拼音合并成一个字符串
    result = ''.join(pinyin_list)
    return result


def get_first_pinyin(data):
    """返回拼音首字母,例如:你好 => nh"""
    # 获取拼音列表,使用 Style.FIRST_LETTER 获取每个字的首字母
    pinyin_list = pinyin(data, style=Style.FIRST_LETTER)

    # 提取每个拼音的首字母并将它们合并成一个字符串
    result = ''.join([item[0] for item in pinyin_list])

    return result


def get_pinyin_with_tones(data):
    """返回带声调的拼音,例如:你好 => nǐ hǎo"""
    # 获取拼音列表,使用 Style.TONE 获取每个字的拼音(带声调)
    pinyin_list = pinyin(data, style=Style.TONE, heteronym=False)

    # 将拼音列表中的拼音合并成一个字符串,每个拼音之间用空格分隔
    result = ' '.join([item[0] for item in pinyin_list])

    return result

for i in datastring:
    all = getallpinyin(i)#获取全拼
    first = get_first_pinyin(i)#获取首拼
    tons = get_pinyin_with_tones(i)#获取全拼带声调
    print(all)
    print(first)
    print(tons)

【输出结果】

nihao
nh
nǐ hǎo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值