2015-02-05 15 views

回答

1

呃,你應該使用engine.setProperty('voice', voice_id)(與voice_id是在您的系統聲音的ID,你可以抓住一個可用聲音從engine.getProperty('voices')名單)作爲that example建議:

engine = pyttsx.init() 
voices = engine.getProperty('voices') 
for voice in voices: 
    engine.setProperty('voice', voice.id) # changes the voice 
    engine.say('The quick brown fox jumped over the lazy dog.') 
engine.runAndWait() 

你不必須循環,您可以在沒有for循環的情況下設置語音ID。
就那樣做:

engine = pyttsx.init() 
engine.setProperty('voice', voice_id) # use whatever voice_id you'd like 
engine.say('The quick brown fox jumped over the lazy dog.') 
+1

謝謝,這是我試過,但所有目前存在的聲音ID的聲音完全一樣,想知道如果我錯過了一些東西明顯。 – 2015-02-05 13:42:45

5
import pyttsx 

engine = pyttsx.init() 
voices = engine.getProperty('voices') 

engine.setProperty('voice', voices[0].id) #change index to change voices 
engine.say('I'm a little teapot...') 

engine.runAndWait()