无法在 windows 7 中 运行 python 3.6 中的语音模块?

Unable to run the Speech module in python 3.6 in windows 7?

我正在使用 python 3.6,但在 Windows 7 中导入语音模块时遇到错误。

import speech
import sys
import os
import numpy as np
import pyttsx3


counter = 0

while True:
    print ("Talk:")
    phrase = speech.input()
    print("HERE")
    print (phrase)

    if phrase == "Friday":
        speech.say("Yes sir!, at your service!")
    if phrase == ("What's the day today"):
        os.system(r"D:\python_github_testing\Basic_Ai-master\checkDay.vbs")     

我收到以下错误

Talk: Traceback (most recent call last): File "D:\python_github_testing\Basic_Ai-master\testingFriday.py", line 12, in phrase = speech.input() File "C:\Users\nnkashyap\AppData\Local\Programs\Python\Python36\lib\site-packages\speech.py", line 165, in input listener = listenforanything(response)

File "C:\Users\nnkashyap\AppData\Local\Programs\Python\Python36\lib\site-packages\speech.py", line 196, in listenforanything return _startlistening(None, callback)

File "C:\Users\nnkashyap\AppData\Local\Programs\Python\Python36\lib\site-packages\speech.py", line 245, in _startlistening grammar.DictationSetState(1)

File "C:\Users\NNKASH~1\AppData\Local\Temp\gen_py.6\C866CA3A-32F7-11D2-9602-00C04F8EE628x0x5x4.py", line 2485, in DictationSetState return self.oleobj.InvokeTypes(16, LCID, 1, (24, 0), ((3, 1),),State pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, None, None, None, 0, -2147023728), None)

我该如何解决?

嗯,这是你的问题!您不能混合使用不同版本的 Python 和库,因为它们通常是为符合特定版本而构建的。

speech 是一个有 10 年历史的模块,据我所知,不支持较新的 python 版本(并且 pywintypes 错误可能暗示那个)。

several, new packages, projects, and APIs,您可以使用它们开始语音识别 and/or 文字转语音。它们几乎都得到了很好的记录,带有教程和入门指南,因此您最好选择其中之一。另一种方法是 return 使用 Python 2.7,我不建议这样做,因为现在是 2019 年。

作为奖励,考虑为你的 Python3.6 创建一个 virtual environment,这样你就有了一个隔离的环境,只有使用 python3 -m venv /path/to/project 的正确库,但这是为了未来!