Python-Pinyin 中文转拼音库使用指南
【免费下载链接】python-pinyin 汉字转拼音(pypinyin) 项目地址: https://gitcode.com/gh_mirrors/py/python-pinyin
项目概述
Python-Pinyin 是一个功能强大的中文转拼音工具库,能够将汉字转换为拼音,支持多种拼音风格、多音字处理以及丰富的自定义选项。本文将详细介绍该库的核心功能和使用方法。
基础用法
基本转换
from pypinyin import pinyin, lazy_pinyin
# 基本拼音转换
print(pinyin('中心')) # 输出: [['zhōng'], ['xīn']]
# 不考虑多音字的简化版本
print(lazy_pinyin('中心')) # 输出: ['zhong', 'xin']
多音字处理
# 启用多音字模式
print(pinyin('中心', heteronym=True))
# 输出: [['zhōng', 'zhòng'], ['xīn']]
拼音风格控制
Python-Pinyin 提供了多种拼音风格选项:
from pypinyin import Style
# 首字母风格
print(pinyin('中心', style=Style.FIRST_LETTER)) # 输出: [['z'], ['x']]
# 注音符号风格
print(pinyin('中心', style=Style.BOPOMOFO)) # 输出: [['ㄓㄨㄥ'], ['ㄒㄧㄣ']]
# 威妥玛拼音风格
print(lazy_pinyin('威妥玛拼音', style=Style.WADEGILES))
# 输出: ['wei', "t'o", 'ma', "p'in", 'yin']
声调表示方式
# TONE2风格(用数字表示声调,放在韵母后)
print(pinyin('中心', style=Style.TONE2, heteronym=True))
# 输出: [['zho1ng', 'zho4ng'], ['xi1n']]
# TONE3风格(用数字表示声调,放在音节后)
print(pinyin('中心', style=Style.TONE3, heteronym=True))
# 输出: [['zhong1', 'zhong4'], ['xin1']]
特殊处理选项
轻声处理
# 使用5标识轻声
print(lazy_pinyin('衣裳', style=Style.TONE3, neutral_tone_with_five=True))
# 输出: ['yi1', 'shang5']
ü的表示方式
# 不使用v表示ü
print(lazy_pinyin('战略', v_to_u=True)) # 输出: ['zhan', 'lüe']
变调处理
# 自动处理变调(nǐ hǎo -> ní hǎo)
print(lazy_pinyin('你好', style=Style.TONE2, tone_sandhi=True))
# 输出: ['ni2', 'ha3o']
异常字符处理
当遇到非中文字符时,可以通过errors参数控制处理方式:
# 默认行为:原样输出
print(pinyin('你好☆☆')) # 输出: [['nǐ'], ['hǎo'], ['☆☆']]
# 忽略非中文字符
print(pinyin('你好☆☆', errors='ignore')) # 输出: [['nǐ'], ['hǎo']]
# 自定义处理方式
print(pinyin('你好☆☆', errors=lambda x: 'star'))
# 输出: [['nǐ'], ['hǎo'], ['star']]
自定义拼音库
如果对默认的拼音转换结果不满意,可以自定义拼音库:
from pypinyin import lazy_pinyin, load_phrases_dict, load_single_dict
# 修正词组拼音
load_phrases_dict({'桔子': [['jú'], ['zǐ']]})
print(lazy_pinyin('桔子')) # 输出: ['ju', 'zi']
# 调整单字拼音顺序
load_single_dict({ord('还'): 'hái,huán'})
print(lazy_pinyin('还没')) # 输出: ['hai', 'mei']
自定义拼音风格
可以注册自己的拼音风格:
from pypinyin.style import register
@register('kiss')
def kiss(pinyin, **kwargs):
return '😘 {0}'.format(pinyin)
print(lazy_pinyin('么么', style='kiss')) # 输出: ['😘 me', '😘 me']
严格模式
strict参数控制是否严格遵循《汉语拼音方案》:
# 严格模式下,y/w不被视为声母
print(lazy_pinyin('乌', style=Style.INITIALS)) # 输出: ['']
# 非严格模式下,y/w被视为声母
print(lazy_pinyin('乌', style=Style.INITIALS, strict=False)) # 输出: ['w']
命令行工具
Python-Pinyin 提供了命令行工具:
# 基本转换
pypinyin 音乐
# 输出: yīn yuè
# 指定风格
pypinyin -s TONE2 音乐
# 输出: yi1n yue4
# 启用多音字
pypinyin -m 音乐
# 输出: yīn yuè lè
拼音风格转换工具
还提供了辅助的拼音风格转换工具:
# 转换为带声调格式
python -m pypinyin.tools.toneconvert to-tone 'zhong1 xin1'
# 输出: zhōng xīn
# 转换为数字声调格式
python -m pypinyin.tools.toneconvert to-tone2 'zhong1 xin1'
# 输出: zho1ng xi1n
总结
Python-Pinyin 是一个功能全面、灵活可配置的中文转拼音工具库,通过本文介绍的各种参数和自定义选项,开发者可以根据实际需求获得精确的拼音转换结果。无论是简单的拼音转换还是复杂的多音字处理,该库都能提供良好的支持。
【免费下载链接】python-pinyin 汉字转拼音(pypinyin) 项目地址: https://gitcode.com/gh_mirrors/py/python-pinyin
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



