importation pyttsx œuvres en python 2.7, mais pas dans python3
Question: pourquoi est-python3 impossible de trouver le moteur du module lors de l'importation de pyttsx?
Détails:
Je fais cela sur un raspberry pi avec Raspbian Wheezy
Sous python 2.7, les ouvrages suivants:
>>> import pyttsx
Sous python3, les événements suivants se produise:
>>> 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
J'ai installé et utilisé sudo pip install pyttsx
J'ai importé sys
sys.le chemin d'accès contient cette...
>>> 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 résultats dans...
easy-install.pth pyttsx-1.1-py3.2.egg setuptools-5.4.1-py3.2.egg setuptools.pth
décompressez -t /usr/local/lib/python3.2/dist-packages/pyttsx-1.1-py3.2.oeuf montre....
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
Merci pour votre aide!
Vous devez vous connecter pour publier un commentaire.
Je crois que vous êtes à la recherche pour la bibliothèque:
pyttsx3
Ce python3 compatible version est maintenant disponible dans pypi et fonctionne assez bien pour les deux python2 et python3 et aussi loin que je l'ai testé , il ne donne aucune erreur.
suffit d'utiliser :
pip install pyttsx3
Utilisation :
J'ai tenté d'installer pyttsx sur Python 3.4 (sur Windows). Voici ce que j'ai découvert:
La pyttsx trouvé sur PyPi a été développé par Peter Parente sur GitHub.
Parente a abandonné la poursuite du développement, et jamais porté sous Python 3. Je ne peux même pas obtenir sa version à installer sur Python 3. Je ne suis pas sûr de la façon dont vous avez géré cette.
Un utilisateur appelé James pour Cent fourchue il et fait un assez minime essayer de le rendre compatible Python 3.
J'ai trouvé que l'essai n'a pas assez loin, car - bien que je pourrais l'installer et même
import pyttsx
avec succès, lorsque j'ai essayé d'appelerpyttsx.init()
il ferait un dynamique de l'importation d'un pilote, et échoue avec une erreur d'importation.J'ai fait un en outre fourche pour corriger ça, que je vais soumettre à James pour Cent. Avec ces changements, je suis en mesure d'exécuter @Khanrad du script de test.
En python 3, Essayez ceci:
pip install pyttsx3
si il donne une erreur de moteur comme "moteur n'est pas trouvé", puis essayez de l'installer.
pip install python-engineio
Je ne suis pas sûr de ce que vous essayez de faire...
En python 3, vous devez appeler le moteur: