# -*- coding: utf-8 -*- # @Author : FELIX # @Date : 2018/6/30 9:20 from pypinyin import pinyin, lazy_pinyin, Style, load_phrases_dict, load_single_dict from pypinyin.style import register print(pinyin('你好')) # [['nǐ'], ['hǎo']] print(pinyin('中心', heteronym=True)) # 啟用多音字模式 # [['zhōng', 'zhòng'], ['xīn']] print(pinyin('中心', style=Style.FIRST_LETTER)) # 設置拼音風格,第一個字母 [['z'], ['x']] print(pinyin('中心', style=Style.TONE2, heteronym=True)) # [['zho1ng', 'zho4ng'], ['xi1n']] print(lazy_pinyin('中心')) # 不考慮多音字的情況 # ['zhong', 'xin'] ##########處理不包含拼音的字符 # default (默認行為): 不做任何處理,原樣返回: print(lazy_pinyin('你好☆☆')) # ['ni', 'hao', '☆☆'] # ignore : 忽略該字符 print(lazy_pinyin('你好☆☆', errors='ignore')) # ['ni', 'hao'] # replace : 替換為去掉 \u 的 unicode 編碼 print(lazy_pinyin('你好☆☆', errors='replace')) # ['ni', 'hao', '26062606'] # callable 對象 : 提供一個回調函數,接受無拼音字符(串)作為參數, 支持的返回值類型: unicode 或 list ([unicode, …]) 或 None 。 print(lazy_pinyin('你好☆☆', errors=lambda x: 'star')) # ['ni', 'hao', 'star'] ########### 自定義拼音庫 print(lazy_pinyin('還沒', style=Style.TONE2)) load_phrases_dict({'桔子': [['jú'], ['zǐ']]}) # 增加 "桔子" 詞組,可以自己定義 print(lazy_pinyin('桔子', style=Style.TONE2)) load_single_dict({ord('還'): 'hái,huán'}) # 調整 "還" 字的拼音順序 print(lazy_pinyin('還沒', style=Style.TONE2)) ###########自定義拼音風格 @register('kiss') def kiss(mypinyin, **kwargs): return '😘 {0}'.format(mypinyin) print(lazy_pinyin('么么噠', style='kiss'))
