AttributeError: module 'pyttsx3' has no attribute 'init'
AttributeError: module 'pyttsx3' has no attribute 'init'
首先,我正在使用:
- Windows 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: module 'pyttsx3' has no attribute '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
似乎模块 pyttsx3 没有正确初始化。我希望模块路径中的任何地方都没有名为 pyttsx3.py 的文件。我发现了一个相关问题 here。
首先,我正在使用:
- Windows 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: module 'pyttsx3' has no attribute '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
似乎模块 pyttsx3 没有正确初始化。我希望模块路径中的任何地方都没有名为 pyttsx3.py 的文件。我发现了一个相关问题 here。