0

首先,我正在使用:

  • 视窗 10
  • Python 3.6.2(但我也尝试过使用 Python 3.5.4)
  • pyttsx3模块

我正在尝试使用 pyttsx3 但我无法使用官方代码示例对其进行初始化。

我的代码(就像这里这里的例子一样):

import pyttsx3
engine = pyttsx3.init()
engine.say('Just a sample text.')
engine.runAndWait()

第二行给了我这个错误:

AttributeError:模块“pyttsx3”没有属性“init”

我用 PIP 安装了它:

pip install pyttsx3

我试图修复它安装 pypiwin32 但它仍然无法正常工作:

pip install pypiwin32

当我执行以下脚本时:

import pyttsx3
print(dir(pyttsx3))

我明白了:

['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'pyttsx3']

有这个:

drivers (folder)
__pycache__ (folder)
driver.py
engine.py
six.py
voice.py
__init__.py

在:

C:\Program Files\Python36\Lib\site-packages\pyttsx3

以及文件的内容__init__.py(我省略了注释):

from .engine import Engine
import weakref

_activeEngines = weakref.WeakValueDictionary()

def init(driverName=None, debug=False):
    try:
        eng = _activeEngines[driverName]
    except KeyError:
        eng = Engine(driverName, debug)
        _activeEngines[driverName] = eng
    return eng
4

1 回答 1

3

似乎 pyttsx3 模块未正确初始化。我希望您在模块路径中的任何位置都没有名为pyttsx3.py的文件。我在这里发现了一个相关的问题。

于 2017-10-21T14:18:38.160 回答