Changelog

0.51.0 (2024-03-10)

  • [New] 新增一个用于转换拼音风格的命令行辅助工具:

    $ python -m pypinyin.tools.toneconvert to-tone 'zhong4 xin1'
    zhòng xīn
    
    $ python -m pypinyin.tools.toneconvert to-tone2 'zhòng xīn'
    zho4ng xi1n
    
    $ python -m pypinyin.tools.toneconvert to-tone3 'zhòng xīn'
    zhong4 xin1
    
    $ python -m pypinyin.tools.toneconvert to-normal 'zhòng xīn'
    zhong xin
    
  • [New] pypinyin 命令行工具支持接受空格间隔的多个汉字词语作为输入(无需引号包裹)(via #318 Thanks @Freed-Wu)

    # 老版本
    $ pypinyin 我 是 小明
    pypinyin: error: unrecognized arguments: 是 小明
    
    # 新版本
    $ pypinyin 我 是 小明
    wǒ
    shì
    xiǎo míng
    
  • [Improved] 使用 phrase-pinyin-data v0.17.0 的词语拼音数据。

0.50.0 (2023-12-11)

0.49.0 (2023-05-14)

0.48.0 (2023-01-15)

  • [Bugfixed] 修复 pypinyin.contrib.tone_convertto_ 开头的转换函数 没有正确处理输入的拼音包含 5 的场景(当包含 5 时会导致返回的格式不符合函数预期的返回格式) 以及修复没有正确处理部分拼音中的 üv 的问题 (当 v_to_u=False 时返回结果需要将 ü 替换为 v) Fixed #290 :

    # 修复前
    >>> to_tone('lve')
    'lve'
    >>> to_tone2('lün5')
    'lv5n'
    >>> to_tone3('lün5')
    'lv5n'
    >>> to_tone2('lvn5')
    'lv5n'
    >>> to_tone3('lvn5')
    'lv5n'
    
    # 修复后
    >>> to_tone('lve')
    'lüe'
    >>> to_tone2('lün5')
    'lvn'
    >>> to_tone3('lün5')
    'lvn'
    >>> to_tone2('lvn5')
    'lvn'
    >>> to_tone3('lvn5')
    'lvn'
    >>> to_tone2('lvn5', v_to_u=True)
    'lün'
    >>> to_tone3('lvn5', v_to_u=True)
    'lün'
    >>> to_tone2('lvn', neutral_tone_with_five=True)
    'lv5n'
    >>> to_tone3('lvn', neutral_tone_with_five=True)
    'lvn5'
    
  • [Bugfixed] 修复 Style.BOPOMOFO 风格下未处理 ê 的问题。Fixed #291

  • [Improved] 使用 phrase-pinyin-data v0.14.0 的词语拼音数据。

0.47.1 (2022-08-21)

  • [Bugfixed] 修复在处理既没有声母也没有韵母的拼音时,指定 neutral_tone_with_five=True 会返回 5 作为拼音的问题(#284):

    # 修复前
    >>> lazy_pinyin('嗯', style=Style.FINALS_TONE3, neutral_tone_with_five=True)
    ['5']
    # 修复后
    >>> lazy_pinyin('嗯', style=Style.FINALS_TONE3, neutral_tone_with_five=True)
    ['']
    

0.47.0 (2022-07-30)

  • [New] [Changed] 自定义拼音风格的回调函数新增关键字参数 han ,用于接收对应的原始汉字:

    @register('new_style')
    def new_style_func(pinyin, **kwargs):
        return kwargs.get('han', '') + pinyin
    
    pinyin('北京', style='new_style')  # output: [['北běi'], ['京jīng']]
    
  • [Improved] 使用 phrase-pinyin-data v0.13.0 的词语拼音数据。

  • [Improved] 使用 pinyin-data v0.13.0 的拼音数据。

  • [Bugfixed] 修复 tone_to_tone3 函数对空字符串的处理 via #279

0.46.0 (2022-02-12)

  • [New] pypinyin.contrib.tone_convert 模块新增 to_finals_toneto_finals_tone2 以及 to_finals_tone3 函数,用于将拼音转换为 Style.FINALS_TONEStyle.FINALS_TONE2 以及 Style.FINALS_TONE3 风格的结果。

  • [Changed]pypinyin.contrib.tone_convert 模块中 to_tone2to_tone3tone_to_tone2tone_to_tone3 函数的 neutral_tone_with_5 参数重命名为统一的 neutral_tone_with_five 参数名称,兼容已有代码传入的 neutral_tone_with_5 参数。建议升级版本后择期修改为 使用新的 neutral_tone_with_five 参数名称。

0.45.0 (2022-01-23)

  • [Bugfixed] 修复韵母相关拼音风格在 strict=True 时未按预期只返回拼音标准中定义过的韵母。 (Fixes #266, Closes #80)

  • [New] pypinyin.contrib.tone_convert 模块新增 to_initialsto_finals 函数, 用于将拼音转换为 Style.INITIALSStyle.FINALS 风格的结果。

0.44.0 (2021-11-14)

  • [New] 增加 Python 3.10 下的测试,正式支持 Python 3.10 。

  • [New] tone2_to_tone3tone3_to_tone2 新增 v_to_u=False 参数

  • [Bugfixed] 修复 pypinyin.contrib.tone_convert 中无声调相关风格转换没有正确处理 v_to_u 参数的问题 (Fixes #251

  • [Improved] 使用 phrase-pinyin-data v0.12.0 的词语拼音数据。

  • [Improved] 使用 pinyin-data v0.12.0 的拼音数据。

0.43.0 (2021-10-06)

  • [New] lazy_pinyin 函数增加参数 tone_sandhi 用于控制是否对拼音结果按 变调规则 进行处理:

    >>> lazy_pinyin('你好', style=Style.TONE2)
    ['ni3', 'ha3o']
    >>> lazy_pinyin('你好', style=Style.TONE2, tone_sandhi=True)
    ['ni2', 'ha3o']
    

0.42.1 (2021-09-30)

0.42.0 (2021-06-14)

  • [New] 新增 Style.WADEGILES :威妥玛拼音/韦氏拼音/威式拼音风格,无声调

    >>> lazy_pinyin('威妥玛拼音', style=Style.WADEGILES)
    ['wei', "t'o", 'ma', "p'in", 'yin']
    

0.41.0 (2021-03-13)

  • [New] 新增 pypinyin.contrib.tone_convert 模块,用于 Style.TONEStyle.TONE2Style.TONE3Style.NORMAL 风格的拼音之间互相转换。 详见 文档

  • [Improved] 使用 pinyin-data v0.10.2 的拼音数据。

0.40.0 (2020-11-22)

  • [Improved] 精简 phrases_dict, 删除 phrases_dict 中凡是能通过 pinyin_dict 得到相同结果的数据。

  • [Improved] 使用 phrase-pinyin-data v0.10.5 的词语拼音数据。

  • [Improved] 使用 pinyin-data v0.10.1 的拼音数据。

0.39.1 (2020-10-08)

0.39.0 (2020-08-16)

  • [New] pinyinlazy_pinyin 函数增加参数 v_to_uneutral_tone_with_five:

    • v_to_u=True 时在无声调相关拼音风格下使用 ü 代替原来的 v

    >>> lazy_pinyin('战略')
    ['zhan', 'lve']
    >>> lazy_pinyin('战略', v_to_u=True)
    ['zhan', 'lüe']
    
    • neutral_tone_with_five=True 时在数字标识声调相关风格下使用 5 标识轻声

    >>> lazy_pinyin('衣裳', style=Style.TONE3)
    ['yi1', 'shang']
    >>> lazy_pinyin('衣裳', style=Style.TONE3, neutral_tone_with_five=True)
    ['yi1', 'shang5']
    

0.38.1 (2020-07-05)

  • [Improved] 优化内置分词,处理前缀匹配导致无法正确识别尾部词语的问题。 Fixed #205

  • [Improved] 使用 phrase-pinyin-data v0.10.3 的词语拼音数据。

0.38.0 (2020-06-07)

  • [Improved] 优化内置分词,严格按照是否是词语来分词。 Fixed #139

  • [Improved] 使用 pinyin-data v0.9.0 的拼音数据。

0.37.0 (2020-02-09)

  • [Bugfixed] 修复 NeutralToneWith5MixinTONE3 相关风格未把 5 标在预期的拼音末尾位置。

  • [New] 增加 Python 3.8 下的测试,正式支持 Python 3.8 。

0.36.0 (2019-10-27)

  • [New] 增加 V2UMixin 用于支持无声调相关拼音风格下的结果使用 ü 代替原来的 v 。 详见 文档

  • [New] 增加 NeutralToneWith5Mixin 用于支持使用数字表示声调的拼音风格下使用 5 标识轻声。 详见 文档

  • [New] 增加 PinyinDefaultConverter 类用于实现自定义处理过程和结果 (实验性功能,绝大部分用户无需关心新增的这两个类)。

  • [Improved] 使用 phrase-pinyin-data v0.10.2 的词语拼音数据。

  • [Improved] 使用 pinyin-data v0.8.1 的拼音数据。

0.35.4 (2019-07-13)

  • [Bugfixed] 修复 ê̄ ế ê̌ 这几个音无法转换为不含声调结果的问题。

  • [Improved] 使用 phrase-pinyin-data v0.10.1 的词语拼音数据。 Fixed #174

  • [Improved] 使用 pinyin-data v0.8.0 的拼音数据。

  • [Improved] 修复一处参数注释错误。(via #176 Thanks @yangwe1)

0.35.3 (2019-05-11)

  • [Bugfixed] 修复鼻音 无法转换为不含声调结果的问题。

  • [Improved] 使用 phrase-pinyin-data v0.10.0 的词语拼音数据。 Fixed #166 #167 #169 #170

  • [Improved] Windows CI 增加在 x64 下跑测试 (via #164 Thanks @hanabi1224)

0.35.2 (2019-04-06)

0.35.1 (2019-03-02)

  • [Bugfixed] 修复 朝阳heteronym=False 时输出了多个音的情况。

0.35.0 (2019-02-24)

  • [Improved] 使用 phrase-pinyin-data v0.9.0 的词语拼音数据。 Fixed #154 #149

  • [New] 支持 朝阳 这种一个词多个音( '朝阳': [['zhāo', 'cháo'], ['yáng']] )在多音字模式下输出多个音。 Fixed #154

0.34.1 (2018-12-30)

0.34.0 (2018-12-08)

不兼容旧版的变更

  • [Changed]errors 参数的值是个回调对象并且返回值是个 list 时, 会使用这个 list 来 extend 结果 list (via #147 . Thanks @howl-anderson )

    # 更新前
    >>> pinyin('你好☆☆', errors=lambda x: ['star' for _ in x])
    [['nǐ'], ['hǎo'], ['star', 'star']]
    
    # 更新后
    >>> pinyin('你好☆☆', errors=lambda x: ['star' for _ in x])
    [['nǐ'], ['hǎo'], ['star'], ['star']]
    

详见文档: https://pypinyin.readthedocs.io/zh_CN/develop/usage.html#handle-no-pinyin

0.33.2 (2018-11-03)

  • [Bugfixed] 修复 strict=True 时韵母相关风格下没有正确处理韵母 üan 的问题。

0.33.1 (2018-09-23)

0.33.0 (2018-08-05)

  • [Bugfixed] 修复命令行程序在 sys.stdin.encodingNone 时无法正常工作的问题。

  • [Improved] 使用 pinyin-data v0.6.1 的拼音数据。

  • [Improved] 使用 phrase-pinyin-data v0.8.3 的词语拼音数据。

  • [Changed] 不再测试 Python 2.6 和 Python 3.3,增加测试 Python 3.7 和 PyPy3 即不保证程序兼容 Python 2.6 和 Python 3.3。

0.32.0 (2018-07-28)

0.31.0 (2018-06-10)

0.30.1 (2018-04-25)

  • [Improved] 更新文档和测试。(via 7fa0b87)

  • [Improved] 对用户传入的已进行分词处理的数据进行二次分词以便提高准确性。(via #126)

  • [Improved] 使用 pinyin-data v0.5.1 的拼音数据。(via #125)

0.30.0 (2018-02-03)

  • [New] 支持有拼音的非汉字字符 (via #119)。

  • [Changed] 修复之前无意中把 pinyin 函数中的 strict 参数的默认值修改为了 False , 现在把 strict 参数的默认值恢复为预期的 True (via #121)。关于 strict 参数的影响详见文档: strict 参数的影响

0.29.0 (2018-01-14)

  • [New] 可以通过环境变量 PYPINYIN_NO_DICT_COPY 禁用代码内对 dict 的 copy 操作,节省内存(via #115 thanks @daya0576 )。

0.28.0 (2017-12-08)

  • [New] 给代码增加类型注解(via #110)。

0.27.0 (2017-10-28)

  • [New] 命令行工具支持通过更简便的方式指定参数及拼音风格。 (详见 #105, Thanks @wdscxsj )

  • [Improved] 增加说明 strict 参数对结果有什么影响的文档。

0.26.1 (2017-10-25)

0.26.0 (2017-10-12)

  • [Changed] 不再自动调用 jieba 分词模块,改为自动调用内置的正向最大匹配分词模块来分词。 (via #102)

0.25.0 (2017-10-01)

  • [New] 内置一个正向最大匹配分词模块,使用内置的词语拼音库来训练这个分词模块, 解决自定义词语库有时可能不生效的问题(因为这个词语在 jieba 等分词模块中不是可用词)。(via #81)

    获取拼音或自定义词库后使用:

    >>> from pypinyin import pinyin, load_phrases_dict
    >>> load_phrases_dict({'了局': [['liǎo'], ['jú']]})
    >>> pinyin('了局啊')   # 使用 jieba 分词
    Building prefix dict from the default dictionary ...
    Dumping model to file cache /var/folders/s6/z9r_07h53pj_d4x7qjszwmbw0000gn/T/jieba.cache
    Loading model cost 1.175 seconds.
    Prefix dict has been built succesfully.
    [['le'], ['jú'], ['a']]
    
    >>> from pypinyin.contrib.mmseg import seg, retrain
    >>> retrain(seg)   # 没有使用 load_phrases_dict 时可以不调用这个函数
    >>> pinyin(seg.cut('了局啊'))  # 使用内置的正向最大匹配分词
    [['liǎo'], ['jú'], ['a']]
    >>>
    

    单独使用:

    >>> from pypinyin.contrib.mmseg import seg
    >>> text = '你好,我是中国人,我爱我的祖国'
    >>> seg.cut(text)
    <generator object Seg.cut at 0x10b2df2b0>
    >>> list(seg.cut(text))
    ['你好', ',', '我', '是', '中国人', ',', '我', '爱',
     '我的', '祖', '国']
    >>> seg.train(['祖国', '我是'])
    >>> list(seg.cut(text))
    ['你好', ',', '我是', '中国人', ',', '我', '爱',
     '我的', '祖国']
    >>>
    

0.24.0 (2017-09-17)

  • [New] 支持类似 pyinstaller 的打包工具对使用 pypinyin 的程序进行打包, 不会出现跟打包前不一样的输出(比如: #92 )(via #93 )。

0.23.0 (2017-07-09)

0.22.0 (2017-06-14)

0.21.1 (2017-05-29)

  • [Bugfixed] 修复在 Python 2 下通过 pip install 安装 wheel 格式的安装包后, 无法正常使用的问题。(Python 2 下没有自动安装依赖包)

0.21.0 (2017-05-14)

  • [New] 重构各拼音风格实现,支持自定义拼音风格或覆盖已有拼音风格的实现.

    from pypinyin.style import register
    
    @register('style1')
    def func(pinyin, **kwargs):
        # pinyin = xxx   # convert to style1
        return pinyin
    
    def func(pinyin, **kwargs):
        # pinyin = xxx   # convert to style2
        return pinyin
    register('style2', func=func)
    

0.20.0 (2017-05-13)

  • [New] 增加 strict 参数来控制处理声母和韵母时是否严格遵循 《汉语拼音方案》 标准。

    strict=True 时根据 《汉语拼音方案》 的如下规则处理声母、在韵母相关风格下还原正确的韵母:

    • 21 个声母: b p m f d t n l g k h j q x zh ch sh r z c sy, w 不是声母

    • i行的韵母,前面没有声母的时候,写成yi(衣),ya(呀),ye(耶),yao(腰),you(忧),yan(烟),yin(因),yang(央),ying(英),yong(雍)。(y 不是声母

    • u行的韵母,前面没有声母的时候,写成wu(乌),wa(蛙),wo(窝),wai(歪),wei(威),wan(弯),wen(温),wang(汪),weng(翁)。(w 不是声母

    • ü行的韵母,前面没有声母的时候,写成yu(迂),yue(约),yuan(冤),yun(晕);ü上两点省略。(韵母相关风格下还原正确的韵母 ü

    • ü行的韵跟声母j,q,x拼的时候,写成ju(居),qu(区),xu(虚),ü上两点也省略; 但是跟声母n,l拼的时候,仍然写成nü(女),lü(吕)。(韵母相关风格下还原正确的韵母 ü

    • iou,uei,uen前面加声母的时候,写成iu,ui,un。例如niu(牛),gui(归),lun(论)。(韵母相关风格下还原正确的韵母 iou,uei,uen

    具体差异可以查看 tests/test_standard.py 中的对比结果测试用例

  • [Changed] 改为使用 enum 定义拼音风格(兼容旧版本)

0.19.0 (2017-05-05)

  • [New] 韵母风格下根据 汉语拼音方案 还原原始的 iou , uei , uen 韵母。

    iou,uei,uen前面加声母的时候,写成iu,ui,un。 例如niu(牛),gui(归),lun(论)。即:

    • niu 的韵母是 iou

    • gui 的韵母是 uei

    • lun 的韵母是 uen

  • [Fixed] 修复韵母相关风格下没有正确处理 wu 的韵母的问题 (比如: FINALS_TONE 风格下的结果是 的问题) 。

  • [Fixed] 修复漏了 ǖ -> v1 的转换。

0.18.2 (2017-04-25)

0.18.1 (2017-03-22)

  • [Improved] PyPI 上传过程中出了点问题。

0.18.0 (2017-03-22)

0.17.0 (2017-03-13)

  • [Changed] 词语拼音数据改为使用来自 phrase-pinyin-data v0.3.1 的拼音数据。

  • [Fixed] 修正 斯事体大 的拼音。

0.16.1 (2017-02-12)

  • [Improved] 使用 pinyin-data v0.4.1 的拼音数据. fixed #58

  • [Improved] 更新 厦门 的拼音. fixed #59

0.16.0 (2016-11-27)

  • [New] Added new pinyin styles - CYRILLIC (汉语拼音与俄语字母对照表) and CYRILLIC _FIRST (via #55 thanks @tyrbonit)

    >>> pypinyin.pinyin('中心', style=pypinyin.CYRILLIC)
    [['чжун1'], ['синь1']]
    >>> pypinyin.pinyin('中心', style=pypinyin.CYRILLIC_FIRST)
    [['ч'], ['с']]
    
  • [New] Added Russian translation README (README_ru.rst)

  • [New] Command-line tool supported the new pinyin styles: CYRILLIC, CYRILLIC_FIRST

0.15.0 (2016-10-18)

0.14.0 (2016-09-24)

  • [New] 新增注音 BOPOMOFO 及注音首字母 BOPOMOFO_FIRST 风格(via #51 thanks @gumblex @Artoria2e5)

    >>> pypinyin.pinyin('中心', style=pypinyin.BOPOMOFO)
    [['ㄓㄨㄥ'], ['ㄒㄧㄣ']]
    >>> pypinyin.pinyin('中心', style=pypinyin.BOPOMOFO_FIRST)
    [['ㄓ'], ['ㄒ']]
    
  • [New] 新增音调在拼音后的 TONE3 以及 FINALS_TONE3 风格(via #51 thanks @gumblex @Artoria2e5 )

    >>> pypinyin.pinyin('中心', style=pypinyin.TONE3)
    [['zhong1'], ['xin1']]
    >>> pypinyin.pinyin('中心', style=pypinyin.FINALS_TONE3)
    [['ong1'], ['in1']]
    
  • [New] 命令行程序支持新增的四个风格: TONE3, FINALS_TONE3, BOPOMOFO, BOPOMOFO_FIRST

  • [Bugfixed] 修复 TONE2 中 ü 标轻声的问题(像 侵略 -> qi1n lv0e4),以及去除文档中 0 表示轻声(via #51 thanks @gumblex)

  • [Changed] 不再使用 0 表示轻声,轻声时没有数字(via #51 thanks @gumblex)

0.13.0 (2016-08-19)

  • [Changed] 分离词组库中包含中文逗号的词语(via f097b6a)

  • [Changed] 使用 pinyin-data v0.3.0 的拼音数据

0.12.1 (2016-05-11)

  • [Bugfixed] 修复一些词语存在拼音粘连在一起的情况. (#41 thanks @jolly-tao )

0.12.0 (2016-03-12)

  • [Changed] 单个汉字的拼音数据改为使用来自 pinyin-data 的拼音数据。

  • [New] 命令行程序支持从标准输入读取汉字信息:

    $ echo "你好" | pypinyin
    nǐ hǎo
    $ pypinyin < hello.txt
    nǐ hǎo
    

0.11.1 (2016-02-17)

  • [Bugfixed] 更新 phrases_dict 修复类似 #36 的问题。thanks @someus

0.11.0 (2016-01-16)

  • [Changed] 分割 __init__.pycompat.py, constants.pycore.pyutils.py。 影响: __init__.py 中只保留文档中提到过的 api, 如果使用了不在文档中的 api 则需要调整代码。

0.10.0 (2016-01-02)

  • [New] Python 3.3++++ 以上版本默认支持 U++++20000 ~ U++++2FA1F 区间内的汉字(详见 #33)

0.9.5 (2015-12-19)

  • [Bugfixed] 修复未正确处理鼻音(详见 汉语拼音 - 维基百科 )的问题(#31 thanks @xulin97 ):

    • ḿ、ń、ň、ǹ 对应 “呒”、“呣”、“唔”、“嗯”等字。 这些字之前在各种风格下都输出原始的汉字而不是拼音。

0.9.4 (2015-11-27)

  • [Improved] 细微调整,主要是更新文档

0.9.3 (2015-11-15)

  • [Bugfixed] Fixed Python 3 compatibility was broken.

0.9.2 (2015-11-15)

  • [New] load_single_dictload_phrases_dict 增加 style 参数支持 TONE2 风格的拼音

    load_single_dict({ord(u'啊'): 'a1'}, style='tone2')
    load_phrases_dict({u"阿爸": [[u"a1"], [u"ba4"]]}, style='tone2'}
    
  • [Improved] Improved docs

0.9.1 (2015-10-17)

  • [Bugfixed][Changed] 修复 ju, qu, xu, yu, yiwu 的韵母( #26 ). Thanks @MingStar :

    • ju, qu, xu 的韵母应该是 v

    • yi 的韵母是 i

    • wu 的韵母是 u

    • 从现在开始 y 既不是声母也不是韵母,详见 汉语拼音方案

0.9.0 (2015-09-20)

  • [Changed] 将拼音词典库里的国际音标字母替换为 ASCII 字母. Thanks @MingStar :

    • ɑ -> a

    • ɡ -> g

0.8.5 (2015-08-23)

  • [Bugfixed] 修复 zh, ch, sh, z, c, s 顺序问题导致获取声母有误

0.8.4 (2015-08-23)

  • [Changed] y, w 也不是声母. (hotoo/pinyin#57):

    • y, w 开头的拼音在声母(INITIALS)模式下将返回 ['']

0.8.3 (2015-08-20)

  • [Improved] 上传到 PyPI 出了点问题,但是又 没法重新上传 ,只好新增一个版本

0.8.2 (2015-08-20)

  • [Bugfixed][Changed] 修复误把 yu 放入声母列表里的 BUG(#22). Thanks @MingStar

0.8.1 (2015-07-04)

  • [Bugfixed] 重构内置的分词功能,修复“无法正确处理包含空格的字符串的问题”

0.8.0 (2015-06-27)

  • [New] 内置简单的分词功能,完善处理没有拼音的字符 (如果不需要处理多音字问题, 现在可以不用安装 jieba 或其他分词模块了):

    # 之前, 安装了结巴分词模块
    lazy_pinyin(u'你好abc☆☆')
    [u'ni', u'hao', 'a', 'b', 'c', u'\u2606', u'\u2606']
    
    # 现在, 无论是否安装结巴分词模块
    lazy_pinyin(u'你好abc☆☆')
    [u'ni', u'hao', u'abc\u2606\u2606']
    
  • [Changed]errors 参数是回调函数时,函数的参数由 单个字符 变更为 单个字符或词组
    即: 对于 abc 字符串, 之前将调用三次 errors 回调函数: func('a') ... func('b') ... func('abc')
    现在只调用一次: func('abc')
  • [Changed] 将英文字符也纳入 errors 参数的处理范围:

    # 之前
    lazy_pinyin(u'abc', errors='ignore')
    [u'abc']
    
    # 现在
    lazy_pinyin(u'abc', errors='ignore')
    []
    

0.7.0 (2015-06-20)

  • [Bugfixed] Python 2 下无法使用 from pypinyin import * 的问题

  • [New] 支持以下环境变量:

    • PYPINYIN_NO_JIEBA=true: 禁用“自动调用结巴分词模块”

    • PYPINYIN_NO_PHRASES=true: 禁用内置的“词组拼音库”

0.6.0 (2015-06-10)

  • [New] errors 参数支持回调函数(#17):

    def foobar(char):
        return u'a'
    pinyin(u'あ', errors=foobar)
    

0.5.7 (2015-05-17)

  • [Bugfixed] 纠正包含 “便宜” 的一些词组的读音

0.5.6 (2015-02-26)

  • [Bugfixed] “苹果” pinyin error. #11

  • [Bugfixed] 重复 import jieba 的问题

  • [Improved] 精简 phrases_dict

  • [Improved] 更新文档

0.5.5 (2015-01-27)

  • [Bugfixed] phrases_dict error

0.5.4 (2014-12-26)

  • [Bugfixed] 无法正确处理由分词模块产生的中英文混合词组(比如:B超,维生素C)的问题. #8

0.5.3 (2014-12-07)

  • [Improved] 更新拼音库

0.5.2 (2014-09-21)

  • [Improved] 载入拼音库时,改为载入其副本。防止内置的拼音库被破坏

  • [Bugfixed] 胜败乃兵家常事 的音标问题

0.5.1 (2014-03-09)

  • [New] 参数 errors 用来控制如何处理没有拼音的字符:

    • 'default': 保留原始字符

    • 'ignore': 忽略该字符

    • 'replace': 替换为去掉 \u 的 unicode 编码字符串(u'\u90aa' => u'90aa')

    只处理 [^a-zA-Z0-9_] 字符。

0.5.0 (2014-03-01)

  • [Changed] 使用新的单字拼音库内容和格式

    新的格式:{0x963F: u"ā,ē"}
    旧的格式:{u'啊': u"ā,ē"}

0.4.4 (2014-01-16)

  • [Improved] 清理命令行命令的输出结果,去除无关信息

  • [Bugfixed] “ImportError: No module named runner”

0.4.3 (2014-01-10)

  • [Bugfixed] 命令行工具在 Python 3 下的兼容性问题

0.4.2 (2014-01-10)

  • [Changed] 拼音风格前的 STYLE_ 前缀(兼容包含 STYLE_ 前缀的拼音风格)

  • [New] 命令行工具,具体用法请见: pypinyin -h

0.4.1 (2014-01-04)

  • [New] 支持自定义拼音库,方便用户修正程序结果(load_single_dict, load_phrases_dict)

0.4.0 (2014-01-03)

  • [Changed]jieba 模块改为可选安装,用户可以选择使用自己喜爱的分词模块对汉字进行分词处理

  • [New] 支持 Python 3

0.3.1 (2013-12-24)

  • [New] lazy_pinyin

    >>> lazy_pinyin(u'中心')
    ['zhong', 'xin']
    

0.3.0 (2013-09-26)

  • [Bugfixed] 首字母风格无法正确处理只有韵母的汉字

  • [New] 三个拼音风格:
    • pypinyin.STYLE_FINALS : 韵母风格1,只返回各个拼音的韵母部分,不带声调。如: ong uo

    • pypinyin.STYLE_FINALS_TONE : 韵母风格2,带声调,声调在韵母第一个字母上。如: ōng

    • pypinyin.STYLE_FINALS_TONE2 : 韵母风格2,带声调,声调在各个拼音之后,用数字 [0-4] 进行表示。如: o1ng uo2

0.2.0 (2013-09-22)

  • [Improved] 完善对中英文混合字符串的支持:

    >> pypinyin.pinyin(u'你好abc')
    [[u'n\u01d0'], [u'h\u01ceo'], [u'abc']]
    

0.1.0 (2013-09-21)

  • [New] Initial Release