scratch3.0中我們通過(guò)添加“朗讀文字”擴(kuò)展便可以編寫程序,將文字朗讀出來(lái)。
那么如何編程,讓Python將文字轉(zhuǎn)成語(yǔ)音并讀出來(lái)?
方法比較多,酷叮貓少兒編程大連校區(qū)在此先介紹一種(利用系統(tǒng)內(nèi)置語(yǔ)音引擎實(shí)現(xiàn)發(fā)音),其他方法大家可以網(wǎng)上找到答案。
1、Pyttsx是一個(gè)跨平臺(tái)將文字轉(zhuǎn)成語(yǔ)音的第三方庫(kù),它對(duì)操作系統(tǒng)內(nèi)置的語(yǔ)音引擎實(shí)現(xiàn)了包裝。
Pyttsx安裝
Python2:pip install pyttsx
Python3:pip install pyttsx3
代碼
import pyttsx3
engine = pyttsx3.init()
engine.say("Good")
engine.runAndWait()
pyttsx默認(rèn)使用的是讀取英文引擎,如果需要讀取中文時(shí)需要修改語(yǔ)言設(shè)置,不然可能會(huì)報(bào)錯(cuò)或者無(wú)法發(fā)音
修改程序如下:
engine = pyttsx3.init()
#設(shè)置語(yǔ)言為中文
engine.setProperty("voice","HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Sp
eech\Voices\Tokens\TTS_MS_ZH-CN_HUIHUI_11.0")
engine.say("你好嗎?")
engine.runAndWait()