pypinyin
將漢字轉(zhuǎn)為拼音≈瞿埽可以用于漢字注音、排序苏携、檢索 装蓬。
- Documentation: http://pypinyin.rtfd.io
- GitHub: https://github.com/mozillazg/python-pinyin
特性
- 根據(jù)詞組智能匹配最正確的拼音牍帚。
- 支持多音字履羞。
- 簡單的繁體支持, 注音支持屡久。
- 支持多種不同拼音風(fēng)格被环。
安裝
$ pip install pypinyin
驗(yàn)證是否安裝成功:
使用說明
>>> from pypinyin import pinyin, lazy_pinyin, Style
>>> pinyin('音樂')
[['yīn'], ['yuè']]
>>> pinyin('音樂', heteronym=True) #多音字
[['yīn'], ['yuè']]
>>> pinyin('樂', heteronym=True) #多音字
[['lè', 'yuè']]
>>> pinyin('樂')
[['lè']]
>>> lazy_pinyin('中心') #忽略多音字
['zhong', 'xin']
拼音風(fēng)格
class pypinyin.Style定義拼音風(fēng)格
風(fēng)格 | 含義 |
---|---|
NORMAL = 0 | 普通風(fēng)格,不帶聲調(diào)版姑。如: 中國 -> zhong guo
|
TONE = 1 | 標(biāo)準(zhǔn)聲調(diào)風(fēng)格,拼音聲調(diào)在韻母第一個(gè)字母上(默認(rèn)風(fēng)格)表制。如: 中國 -> zhōng guó
|
TONE2 = 2 | 聲調(diào)風(fēng)格2么介,即拼音聲調(diào)在各個(gè)韻母之后壤短,用數(shù)字 [1-4] 進(jìn)行表示久脯。如: 中國 -> zho1ng guo2
|
TONE3 = 8 | 聲調(diào)風(fēng)格3,即拼音聲調(diào)在各個(gè)拼音之后骡和,用數(shù)字 [1-4] 進(jìn)行表示。如: 中國 -> zhong1 guo2
|
INITIALS = 3 | 聲母風(fēng)格钮科,只返回各個(gè)拼音的聲母部分(注:有的拼音沒有聲母,詳見 #27 _)蛆挫。如: 中國 -> zh g
|
FIRST_LETTER = 4 | 首字母風(fēng)格悴侵,只返回拼音的首字母部分可免。如: 中國 -> z g
|
FINALS = 5 | 韻母風(fēng)格浇借,只返回各個(gè)拼音的韻母部分,不帶聲調(diào)修己。如: 中國 -> ong uo
|
FINALS_TONE = 6 | 標(biāo)準(zhǔn)韻母風(fēng)格迎罗,帶聲調(diào)尤辱,聲調(diào)在韻母第一個(gè)字母上光督。如:中國 -> ōng uó
|
FINALS_TONE2 = 7 | 韻母風(fēng)格2,帶聲調(diào)卒茬,聲調(diào)在各個(gè)韻母之后柳畔,用數(shù)字 [1-4] 進(jìn)行表示薪韩。如: 中國 -> o1ng uo2
|
FINALS_TONE3 = 9 | 韻母風(fēng)格3罗捎,帶聲調(diào)宛逗,聲調(diào)在各個(gè)拼音之后,用數(shù)字 [1-4] 進(jìn)行表示。如: 中國 -> ong1 uo2
|
BOPOMOFO = 10 | 注音風(fēng)格驻粟,帶聲調(diào)蜀撑,陰平(第一聲)不標(biāo)酷麦。如: 中國 -> ㄓㄨㄥ ㄍㄨㄛˊ
|
BOPOMOFO_FIRST = 11 | 注音風(fēng)格轻黑,僅首字母氓鄙。如: 中國 -> ㄓ ㄍ
|
CYRILLIC = 12 | 漢語拼音與俄語字母對照風(fēng)格升酣,聲調(diào)在各個(gè)拼音之后脚牍,用數(shù)字 [1-4] 進(jìn)行表示。如: 中國 -> чжун1 го2
|
CYRILLIC_FIRST = 13 | 漢語拼音與俄語字母對照風(fēng)格君纫,僅首字母叉庐。如: 中國 -> ч г
|
API函數(shù)
漢字轉(zhuǎn)拼音
pinyin
pypinyin.pinyin(hans, style=<Style.TONE: 1>, heteronym=False, errors='default', strict=True)
將漢字轉(zhuǎn)換為拼音陡叠,返回漢字的拼音列表预茄。
參數(shù) | 說明 |
---|---|
hans | 漢字字符串 |
style | 指定拼音風(fēng)格耻陕,默認(rèn)是 TONE風(fēng)格 |
errors | 指定如何處理沒有拼音的字符 |
heteronym | 指定是否啟用多音字 |
strict | 指定是否嚴(yán)格遵照《漢語拼音方案》來處理聲母和韻母 |
lazy_pinyin
pypinyin.lazy_pinyin(hans, style=<Style.NORMAL: 0>, errors='default', strict=True)
將漢字轉(zhuǎn)換為拼音,返回不包含多音字結(jié)果的拼音列表.
參數(shù) | 說明 |
---|---|
hans | 漢字字符串 |
style | 指定拼音風(fēng)格,默認(rèn)是 TONE風(fēng)格 |
errors | 指定如何處理沒有拼音的字符 |
strict | 指定是否嚴(yán)格遵照《漢語拼音方案》來處理聲母和韻母 |
自定義拼音庫
load_single_dict
pypinyin.load_single_dict(pinyin_dict, style='default'
載入用戶自定義的單字拼音庫
參數(shù) | 說明 |
---|---|
pinyin_dict (dict) | 單字拼音庫穿稳。比如: {0x963F: u"ā,ē"} |
style | pinyin_dict 參數(shù)值的拼音庫風(fēng)格. 支持 ‘default’, ‘tone2’ |
load_phrases_dict
pypinyin.load_phrases_dict(phrases_dict, style='default')
載入用戶自定義的詞語拼音庫
參數(shù) | 說明 |
---|---|
phrases_dict (dict) | 詞語拼音庫。比如: {u"阿爸": [[u"ā"], [u"bà"]]} |
style | phrases_dict 參數(shù)值的拼音庫風(fēng)格. 支持 ‘default’, ‘tone2’ |