【问题标题】:Pyttsx: AttributeError: 'module' object has no attribute 'init'Pyttsx:AttributeError:“模块”对象没有属性“init”
【发布时间】:2017-05-12 06:11:50
【问题描述】:

大家好,提前致谢

import pyttsx
engine = pyttsx.init()
engine.say('Hello World')
engine.runAndWait()

我得到这个错误:

Traceback (most recent call last):
  File "C:\Users\xxx\eclipse\workspace\Ai_Project\AI\Ai_Brain.py", line 8, in <module>
    engine = pyttsx.init()
AttributeError: 'module' object has no attribute 'init'

我在 Windows 7 上使用 Python 2.7 和 eclipse neon。这是某种兼容性问题吗?我搜索了很多相关问题,但将答案应用于我的案例并没有解决错误

【问题讨论】:

  • 你的工作目录中有 pyttsx.py 吗?
  • 你的意思是在我的工作区文件夹中?不,我有 2 个文件 init.py 和 AI_Brain.py。如果你的意思是我是否在我的 python 安装中安装了 pyttsx,那就是。

标签: python attributeerror pyttsx


【解决方案1】:

导入pyttsx模块后:

import pyttsx

使用命令

dir(pyttsx)

你的输出会是这样的

['Engine',
 '__builtins__',
 '__doc__',
 '__file__',
 '__name__',
 '__package__',
 '__path__',
 '_activeEngines',
 'driver',
 'drivers',
 'engine',
 'init',
 'weakref']

(见末尾处的'init')。

我猜你的输出会不同 - 它会显示你实际导入的哪个模块,不管它的名字是pyttsx

【讨论】:

  • 我应该在哪里使用该命令?在eclipse代码中?如果是,它没有显示任何东西(只是空白)。
  • 有两种可能性,我的意思是第一种:1)PyDev 控制台 - 可能是 Eclipse IDE 的右下角,带有“控制台” “ 标签。从最后一个图标(带有工具提示打开控制台)中选择“PyDev 控制台”。2)Eclipse 编辑器 中,就像您所做的那样,但是您必须使用 @987654327 @命令:print dir(pyttsx)
【解决方案2】:

我想这很容易,我会发布答案,以防将来有人遇到同样的问题并且他/她提出的每个查询都不起作用。将此视为人为错误并检查您的兼容性问题。就我而言,问题是我安装了 pywin32-219.win-amd64-py2.7 而不是 pywin32-py2.7.exe。

感谢所有阅读或回答我问题的人

【讨论】:

    猜你喜欢
    • 2011-10-25
    • 2017-06-26
    • 2011-05-03
    • 2017-03-29
    • 2013-02-13
    • 2010-11-18
    • 2019-01-03
    • 2017-05-19
    相关资源
    最近更新 更多