Python 3.x 为什么我的代码在试图让它说出它所识别的内容时会出现错误?

Python 3.x 为什么我的代码在试图让它说出它所识别的内容时会出现错误?,python-3.x,speech-recognition,speech,pyttsx,Python 3.x,Speech Recognition,Speech,Pyttsx,我正在Python3上进行语音实验,我对python非常陌生,我已经浏览了所有的互联网,以了解我的代码出了什么问题,当我运行代码时,我得到了下面可以看到的错误。请帮助我更好地了解发生了什么 这是我的密码: import speech_recognition as sr import time import pyttsx3 r = sr.Recognizer() with sr.Microphone() as mic: print("Say something") audio

我正在Python3上进行语音实验,我对python非常陌生,我已经浏览了所有的互联网,以了解我的代码出了什么问题,当我运行代码时,我得到了下面可以看到的错误。请帮助我更好地了解发生了什么

这是我的密码:

import speech_recognition as sr
import time
import pyttsx3

r = sr.Recognizer()

with sr.Microphone() as mic:
    print("Say something")
    audio = r.listen(mic)
    print("Recording Stopped")
r.recognize_google(audio)






if r.recognize_google(audio) == "I'm pretty" or r.recognize_google(audio) == "I am pretty" :
    engine = pyttsx3.init()
    engine.say("You said: I'm Ugly")
    engine.runAndWait()
else:
    engine = pyttsx3.init()
    engine.say("You said: " + r.recognize_google(audio))
    engine.runAndWait()
以下是错误消息:

Last login: Sat Feb 16 18:03:26 on ttys002
ErenUcar-3:~ eucar$  python /Users/eucar/.atom/packages/atom-python-run/lib/../cp/main.py --pause -- python3 /Users/eucar/Documents/Testing/noob.py


Say something
Recording Stopped
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pyttsx3/__init__.py", line 44, in init
    eng = _activeEngines[driverName]
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/weakref.py", line 137, in __getitem__
    o = self.data[key]()
KeyError: None

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/eucar/Documents/Testing/noob.py", line 23, in <module>
    engine = pyttsx3.init()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pyttsx3/__init__.py", line 46, in init
    eng = Engine(driverName, debug)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pyttsx3/engine.py", line 52, in __init__
    self.proxy = driver.DriverProxy(weakref.proxy(self), driverName, debug)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pyttsx3/driver.py", line 75, in __init__
    self._module = importlib.import_module(name)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pyttsx3/drivers/nsss.py", line 2, in <module>
    from Foundation import *
ModuleNotFoundError: No module named 'Foundation'

Process returned 1 (0x1)    execution time : 10.702 s
Close this window to continue...
ErenUcar-3:~ eucar$ 
上次登录:ttys002上的星期六2月16日18:03:26
ErenUcar-3:~eucar$python/Users/eucar/.atom/packages/atom-python-run/lib/./cp/main.py--pause--python3/Users/eucar/Documents/Testing/noob.py
说点什么
录音停止
回溯(最近一次呼叫最后一次):
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/pyttsx3/_init__.py”,第44行,在init中
eng=\u活动引擎[driverName]
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/weakref.py”,第137行,在__
o=自身数据[键]()
KeyError:无
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“/Users/eucar/Documents/Testing/noob.py”,第23行,在
engine=pyttsx3.init()
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/pyttsx3/_init__.py”,第46行,在init中
eng=引擎(驱动器名称,调试)
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/pyttsx3/engine.py”,第52行,在__
self.proxy=driver.DriverProxy(weakref.proxy(self)、driverName、debug)
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/pyttsx3/driver.py”,第75行,在__
self.\u模块=导入lib.import\u模块(名称)
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/importlib/\uuuu init\uuuuu.py”,第127行,在导入模块中
return _bootstrap._gcd_import(名称[级别:],包,级别)
文件“”,第1006行,在\u gcd\u导入中
文件“”,第983行,在_find_和_load中
文件“”,第967行,在“查找”和“加载”中解锁
文件“”,第677行,在\u加载\u解锁
exec_模块中第728行的文件“”
文件“”,第219行,在“调用”中,删除了“帧”
文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site packages/pyttsx3/drivers/nsss.py”,第2行,在
从基础进口*
ModuleNotFoundError:没有名为“Foundation”的模块
进程返回1(0x1)执行时间:10.702秒
关闭此窗口以继续。。。
埃伦ucar-3:~eucar$

你能提供更多关于你到底想要实现什么的细节吗?@Julia我希望有人说点什么,然后我希望程序以语音的形式输出正在说的内容。你能提供更多关于你到底想要实现什么的细节吗?@Julia我希望有人说点什么,然后我希望程序以语音的形式输出所说的内容。