这是我的代码
import pyttsx3
# This function is used to process text and speak it out
def speak (lis):
voiceEngine = pyttsx3.init()
voiceEngine.getProperty("rate", 100)
#voice_id = "HKEY_LOCAL_MACHINESOFTWAREMicrosoftSpeechVoicesTokensIVONA 2 Voice Brian22"
#voiceEngine.setProperty('IVONA 2 Brian - British English male voice [22kHz]', voice_id )
voiceEngine.say (lis)
voiceEngine.runAndWait()
voiceEngine.stop
speak(lis = "Hello i am alpha, your personal digital assistant. how may i be of your assistance")
看看pyttsx3.ening.Engine.getProperty
的文档,看起来你给了它太多的参数:
getProperty(name: string)→object
获取引擎属性的当前值。参数说明:name—要查询的属性名称。返回:该属性在调用时的值。
你给了它一个额外的参数:100
。您应该只提供您想要访问的属性的名称:voiceEngine.getProperty("rate")
。
除非您希望使用pyttsx3.engine.Engine.setProperty
,它确实需要第二个值来设置属性的值。