xpinyin
Translate Chinese hanzi to pinyin (拼音) by Python, 汉字转拼音
Install
Python version >= 3.6
pip install -U xpinyin
Python version < 3.6
pip install xpinyin==0.5.7
Usage
>>> from xpinyin import Pinyin
>>> p = Pinyin()
>>> # default splitter is `-`
>>> p.get_pinyin("上海")
'shang-hai'
>>> # show tone marks
>>> p.get_pinyin("上海", tone_marks='marks')
'shàng-hǎi'
>>> p.get_pinyin("上海", tone_marks='numbers')
>>> 'shang4-hai3'
>>> # remove splitter
>>> p.get_pinyin("上海", '')
'shanghai'
>>> # set splitter as whitespace
>>> p.get_pinyin("上海", ' ')
'shang hai'
>>> p.get_initial("上")
'S'
>>> p.get_initials("上海")
'S-H'
>>> p.get_initials("上海", '')
'SH'
>>> p.get_initials("上海", ' ')
'S H'
>>> # get_initials with retroflex, #39
>>> p.get_initials("上海", splitter='-', with_retroflex=True)
'SH-H'
>>> # New in version 0.7.0, get combinations of the multiple readings of the characters
>>> p.get_pinyins('模型', splitter=' ', tone_marks='marks')
['mó xíng', 'mú xíng']
>>> p.get_pinyins('模样', splitter=' ', tone_marks='marks')
['mó yáng', 'mó yàng', 'mó xiàng', 'mú yáng', 'mú yàng', 'mú xiàng']