import pyttsx在python 2.7中工作,但不在python3中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了import pyttsx在python 2.7中工作,但不在python3中相关的知识,希望对你有一定的参考价值。
问题:导入pyttsx时为什么python3无法找到引擎模块?
细节:
我在Raspbian Wheezy的树莓派上做这个
在python 2.7下,以下工作:
>>> import pyttsx
在python3下,会发生以下情况:
>>> import pyttsx
Traceback (etc...)
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.2/dist-packages/pyttsx-1.1-py3.2.egg/pyttsx/__init__.py", line 18, in <module>
ImportError: No module named engine
我安装并使用了sudo pip install pyttsx
我已经导入了sys
sys.path包含这个......
>>> print (sys.path)
['','/usr/local/lib/python3.2/dist-packages/setuptools-5.4.1-py3.2.egg', '/usr/local/lib/python3.2/dist-packages/pyttsx-1.1-py3.2.egg', '/usr/lib/python3.2','usr/lib/python3.2/plat-linux2', '/usr/lib/python3.2/lib-dynload','/usr/local/lib/python3.2/dist-packages','/usr/lib/python3/dist-packages']
ls /usr/local/lib/python3.2/dist-packages导致...
easy-install.pth pyttsx-1.1-py3.2.egg setuptools-5.4.1-py3.2.egg setuptools.pth
unzip -t /usr/local/lib/python3.2/dist-packages/pyttsx-1.1-py3.2.egg显示....
pyttsx/__init__.py OK
pyttsx/voice.py OK
pyttsx/engine.py OK
(etc...)
No errors detected in compressed data of pyttsx-1.1-py3.2.egg
谢谢你的帮助!
我相信你在寻找图书馆:
pyttsx3
这个python3兼容版本现在打包在pypi中,对python2和python3都很好用,据我测试过,它没有给出任何错误。
只需使用:
pip install pyttsx3
用法:
import pyttsx3
engine = pyttsx3.init()
engine.say("I am talking now ");
engine.setProperty('rate',100)
engine.runAndWait();
我试图在Python 3.4(在Windows上)上安装pyttsx。这是我发现的:
pyttsx found on PyPi由Peter Parente on GitHub开发。
Parente已经放弃了进一步的开发,并且从未将它移植到Python 3.我甚至无法在Python 3上安装他的版本。我不确定你是如何管理它的。
一个名为James Percent forked it的用户尝试使Python 3兼容。
我发现尝试不够远,因为 - 虽然我可以安装它甚至import pyttsx
成功,当我试图调用pyttsx.init()
时它会动态导入驱动程序,并导致导入错误失败。
我做了一个further fork to fix that,我将提交给James Percent。有了这些变化,我就可以运行@Khanrad的测试脚本了。
在python 3中试试这个:
pip install pyttsx3
如果它给出了引擎错误,例如“找不到引擎”,那么尝试安装它。
pip install python-engineio
我不确定你要做什么......
在python 3中,你必须调用引擎:
engine = pyttsx.init()
engine.say("What you want to say")
engine.runAndWait()
以上是关于import pyttsx在python 2.7中工作,但不在python3中的主要内容,如果未能解决你的问题,请参考以下文章
带有 Adwords API 的 Python 2.7:ImportError: cannot import name AdWordsClient
Python AppEngine 'import MySQLdb' 不工作,OS X 10.9.2,python 2.7