web-dev-qa-db-fra.com

ImportError: aucun module nommé PytQt5

voici mes versions python, qt et sip

root@thura:~# python -V
Python 2.7.3
root@thura:~# qmake --version
QMake version 3.0
Using Qt version 5.0.2 in /usr/lib/i386-linux-gnu
root@thura:~# sip -V
4.15.3

J'ai essayé d'importer le PyQt5 en suivant par this

from PyQt5.QtWidgets import QtGui, QtCore

J'ai l'erreur suivante

ImportError: aucun module nommé PyQt5.QtWidgets

Comment puis-je résoudre cette erreur.

Mise à jour =====================

Lorsque j'ai essayé PyQt4, j'ai eu l'erreur suivante.

depuis PyQt4.QtCore importez pyqtSlot en tant que Slot RuntimeError: le module sip implémente l'API v10.0 à v10.1 mais le module PyQt4.QtCore nécessite l'API v8.1

Mise à jour 2013-12-20 ======================================

1) téléchargez sip-4.15.3.tar.gz depuis ici

2) extraire sip-4.15.3.tar.gz

3) Copiez SIP-4.15.3 dans/home/thura

4) tapez "cd /home/thura/sip-4.15.3"

5) tapez "python configure.py", appuyez sur entrée, suivez les instructions (tapez oui et appuyez sur entrée)

6) tapez "make", appuyez sur enter et tapez "make install", appuyez sur enter

7) téléchargez PyQt-gpl-5.1.1.tar.gz depuis ici

8) extraire PyQt-gpl-5.1.1.tar.gz

9) copiez le dossier PyQt-gpl-5.1.1 dans le dossier/home/thura.

10) tapez "cd /home/thura/PyQt-gpl-5.1.1"

11) tapez "python configure.py", appuyez sur entrée, en suivant les instructions (tapez oui et appuyez sur entrée)

12) tapez "make", appuyez sur entrée et tapez "make install", appuyez sur entrée

mise à jour 2013-12-20 =====================

Après le refaire. J'ai l'erreur suivante

make[2]: Entering directory `/home/thura/PyQt/qpy/QtDBus'
make[2]: Nothing to be done for `install'.
make[2]: Leaving directory `/home/thura/PyQt/qpy/QtDBus'
make[1]: Leaving directory `/home/thura/PyQt/qpy'
cd QtCore/ && ( test -e Makefile || /usr/lib/i386-linux-gnu/qt5/bin/qmake /home/thura/PyQt/QtCore/QtCore.pro -o Makefile ) && make -f Makefile install
make[1]: Entering directory `/home/thura/PyQt/QtCore'
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_DEBUG -DQT_PLUGIN -DQT_CORE_LIB -I/usr/share/qt5/mkspecs/linux-g++ -I. -I/usr/local/include/python2.7 -I../qpy/QtCore -I/usr/include/qt5 -I/usr/include/qt5/QtCore -I. -o sipQtCoreQtWindowStates.o sipQtCoreQtWindowStates.cpp
In file included from sipQtCoreQtWindowStates.cpp:24:0:
sipAPIQtCore.h:28:17: fatal error: sip.h: No such file or directory
compilation terminated.
make[1]: *** [sipQtCoreQtWindowStates.o] Error 1
make[1]: Leaving directory `/home/thura/PyQt/QtCore'
make: *** [sub-QtCore-install_subtargets-ordered] Error 2
24
Thu Ra

Si vous êtes sur ubuntu, installez simplement pyqt5 avec apt-get commande:

    Sudo apt-get install python3-pyqt5   # for python3

ou

    Sudo apt-get install python-pyqt5    # for python2

Cependant, sur Ubuntu 14.04, le paquet python-pyqt5 est laissé de côté [ source ] et doit être installé manuellement [ source ]

27
artificerpi

pip install pyqt5 pour python3 pour ubuntu

8
Durgesh Kumar

cela peut être résolu sous MacOS X en installant pyqt avec brew

brew install pyqt
8
tom

Après avoir obtenu l'aide de @Blender, @ekhumoro et @Dan, je comprends Linux et Python plus qu'avant. Merci. J'ai eu l'idée de @ekhumoro, c'est que je n'ai pas fait '' t installer PyQt5 correctement. Je supprime donc le dossier PyQt5 et le télécharge à nouveau. Et tout recommence depuis le début.

Après refaire, j'ai eu l'erreur comme ma dernière mise à jour à ma question. Donc, quand je recherche dans la pile, j'ai obtenu la solution suivante de ici

Sudo ln -s /usr/include/python2.7 /usr/local/include/python2.7

Et puis, j'ai fait "Sudo make" et "Sudo make install" pas à pas. Après "Sudo make install", j'ai eu l'erreur suivante. Mais je l'ai ignoré et j'ai créé un design simple avec qt designer. Et je l'ai converti en fichier python par pyuic5. Tout va bien.

install -m 755 -p /home/thura/PyQt/pyuic5 /usr/bin/
strip /usr/bin/pyuic5
strip:/usr/bin/pyuic5: File format not recognized
make: [install_pyuic5] Error 1 (ignored)
7
Thu Ra

Cela signifie probablement que python ne sait pas où se trouve PyQt5. Pour vérifier, allez dans le terminal interactif et tapez:

import sys
print sys.path

Ce que vous devez probablement faire est d'ajouter le répertoire qui contient le module PyQt5 à votre variable d'environnement PYTHONPATH. Si vous utilisez bash, voici comment:

Tapez ce qui suit dans votre shell et ajoutez-le à la fin du fichier ~/.bashrc

export PYTHONPATH=/path/to/PyQt5/directory:$PYTHONPATH

/path/to/PyQt5/directory est le chemin d'accès au dossier où se trouve la bibliothèque PyQt5.

2
Dan