You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pyttsx3开发Jarvis无语音输出及sapi5调用报错问题咨询

问题1:搭配wishMe逻辑的代码无语音输出

根因

你仅定义了speak、wishMe两个函数,没有主动调用执行逻辑,也没有添加主入口判断,脚本运行后直接结束,自然没有语音输出。你贴的可运行简化代码正是因为加了主入口判断、主动调用了speak函数才正常工作。

修复方案

在原有代码末尾添加主入口判断,主动调用wishMe函数即可:

# 原有代码保持不变,末尾新增以下内容
if __name__ == "__main__":
    wishMe()
问题2:sapi5初始化获取语音列表报com_error错误

根因

该错误是Windows SAPI5语音接口的常见报错,触发原因包括:

  • 代码中属性名、方法名写错:设置语音的属性是单数voice不是复数voices,设置属性的方法是小写开头的setProperty不是大写SetProperty
  • 系统中没有安装兼容的SAPI5语音包,或语音包损坏
  • Python版本位数和系统语音包位数不匹配

修复方案

  1. 先修正代码错误,修正后的可运行代码如下:
import pyttsx3

engine = pyttsx3.init('sapi5')
voices = engine.getProperty('voices')
print(voices)
print(voices[0].id)
# 修正方法名和属性名错误
engine.setProperty('voice', voices[0].id)
# 测试语音输出
engine.say("语音测试正常")
engine.runAndWait()
  1. 如果修正代码后仍报错,检查系统语音配置:打开Windows设置→时间和语言→语音,确认已安装至少一个官方语音包(优先安装英文美国、中文简体语音包)
  2. 若仍未解决,确认你的Python版本为64位,和系统位数保持一致,重新安装pyttsx3库即可。

内容的提问来源于stack exchange,提问作者krishna07

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 04:12:03