将一句汉字文本转化为对应的拼音

语音合成时,数据预处理,需要将一句汉字文本转化为对应的拼音,其中,汉字文本包含标点符号,而拼音含有声调不含标点符号

具体格式举例如下:

输入:“设置文件名,怎么样?”

输出:she4 zhi4 wen2 jian4 ming2 zen3 me5 yang5

代码如下:

import re
from pypinyin import pinyin, Style

text = '“设置文件名,怎么样?”'
# 先去掉所有的标点,也就是去掉所有的非汉字
text = re.sub(u"[^\u4e00-\u9fa5]", "", text)
print(text)

# 再将每个字转化为带声调的拼音
pinyins = [p[0] for p in pinyin(text, style=Style.TONE3, strict=False, neutral_tone_with_five=True)]
pinyins = ' '.join(pinyins).strip()
print(pinyins)

你可能感兴趣的:(语音合成,python,python)