Comment installer PyQt4 sur Windows en utilisant pip?

112

J'utilise Python 3.4 sur Windows. Quand je lance un script, il se plaint

ImportError: No Module named 'PyQt4'

J'ai donc essayé de l'installer, mais pip install PyQt4donne

Impossible de trouver des téléchargements répondant à l'exigence PyQt4

bien qu'il apparaisse quand je cours pip search PyQt4. J'ai essayé pip install python-qt, qui s'est installé avec succès mais cela n'a pas résolu le problème.

Qu'est-ce que je fais mal?

Anna
la source
5
il suffit de le télécharger ici: riverbankcomputing.com/software/pyqt/download et de l'exécuter en utilisant python.
thecreator232
Le package python-qt n'installe pas PyQt: c'est juste un wrapper de compatibilité PySide / PyQt. Vous devez faire comme le suggère le créateur232 et installer le package binaire Windows à la place. Cependant, vous devrez d'abord rétrograder vers python-3.3, car il n'y a pas encore d'installateurs pour python-3.4.
ekhumoro

Réponses:

156

Voici les packages de roues Windows construits par Chris Golke - Packages binaires Windows Python - PyQt

Dans les noms de fichiers cp27signifie C-python version 2.7, cp35signifie python 3.5, etc.

Étant donné que Qt est un système plus compliqué avec une base de code C ++ compilée sous-jacente à l'interface python qu'il vous fournit, il peut être plus complexe à construire qu'un simple package de code python pur, ce qui signifie qu'il peut être difficile de l'installer à partir des sources.

Assurez-vous de récupérer le bon fichier de roue Windows (version python, 32/64 bits), puis utilisez pip pour l'installer - par exemple:

C:\path\where\wheel\is\> pip install PyQt4-4.11.4-cp35-none-win_amd64.whl

Doit être correctement installé si vous exécutez une version x64 de Python 3.5.

Ivo
la source
y a-t-il pip sous linux ou installation facile?
Yassine Abdul-Rahman
2
Pour Linux, il est préférable d'installer les packages de développement pour Qt et PyQt depuis votre gestionnaire de packages.
Ivo
7
pourquoi tous les trucs 64 bits sont basés sur AMD? Il me dit que la version amd 64 bits n'est pas une roue prise en charge sur "cette plate-forme"
Naz
8
FWIW, avec python 3.6, l'installation de pyqt5 via pip install pyqt5fonctionne simplement.
matt wilkie
4
Le matériel 64 bits est basé sur AMD, car Intel et AMD ont créé leurs propres architectures / jeux d'instructions 64 bits (incompatibles) à l'époque (des années 1990 au début des années 2000). Intel a développé "IA-64" et AMD a développé "AMD64". Pour faire court: la version d'AMD était meilleure et Intel l'a adoptée, l'appelant maintenant Intel64 pour leurs processeurs - les deux sont à peu près compatibles (différences très mineures). Donc, à peu près tous les processeurs 64 bits x86-64 (sauf Itaniums) utilisent AMD64.
user136036
29

QT ne prend plus en charge PyQt4, mais vous pouvez installer PyQt5 avec pip:

pip install PyQt5
transpercer
la source
1
Désolé, ne fonctionne toujours pas: "Impossible de trouver une version qui satisfait à l'exigence PyQt5 (à partir des versions:)"
Igor F.
vous essayez d'ajouter l'option --trusted-host pypi.python.org
kien bui
3
Cela a fonctionné pour moi. Il est bon de savoir que PyQt5 joue bien avec pip.
miguelmorin
Quand j'essaye ceci en utilisant python 2.7.x - j'obtiens des messages "il n'est pas compatible avec ce Python". a lancé "pip -v --trusted-host pypi.python.org install PyQt5"
Tom
Qt n'a jamais pris en charge PyQt4 au départ - c'était Riverbank Computing.
oldmud0
17

Vous ne pouvez pas utiliser pip. Vous devez télécharger à partir du site Web de Riverbank et exécuter le programme d'installation de votre version de python. S'il n'y a pas d'installation pour votre version, vous devrez installer Python pour l'un des installateurs disponibles, ou construire à partir des sources (ce qui est plutôt compliqué). D'autres réponses et commentaires ont les liens.

Oliver
la source
1
gist.github.com/ColinDuquesnoy/9619035 montre comment construire le pyqt à partir des sources pour votre version de python 3.4
Shelper
@shelper, votre lien est maintenant mort.
MarianD
11

Si vous installez PyQt4 sous Windows, les fichiers se retrouvent ici par défaut:

C: \ Python27 \ Lib \ site-packages \ PyQt4 *. *

mais il laisse aussi un fichier ici:

C: \ Python27 \ Lib \ site-packages \ sip.pyd

Si vous copiez le dossier sip.pyd et PyQt4 dans votre virtualenv, tout fonctionnera correctement.

Par exemple:

mkdir c:\code
cd c:\code
virtualenv BACKUP
cd c:\code\BACKUP\scripts
activate

Ensuite, avec l'explorateur Windows, copiez C:\Python27\Lib\site-packagesle fichier (sip.pyd) et le dossier (PyQt4) mentionnés ci-dessus versC:\code\BACKUP\Lib\site-packages\

Puis de retour à CLI:

cd ..                 
(c:\code\BACKUP)
python backup.py

Le problème avec la tentative de lancement d'un script qui appelle PyQt4 à partir de virtualenv est que le virtualenv n'a pas installé PyQt4 et il ne sait pas comment référencer l'installation par défaut décrite ci-dessus. Mais suivez ces étapes pour copier PyQt4 dans votre virtualenv et les choses devraient bien fonctionner.

Dan
la source
Salut bonne réponse, j'ai essayé de corriger une partie du formatage de la réponse afin que ce soit le même que la norme utilisée sur ce site. veuillez prendre un moment pour vous assurer que tout va bien
Deepend
Bien que cette réponse soit raisonnable, je ne pense pas qu'elle réponde à la question initiale. La question initiale est de savoir comment installer PyQt4, pas comment l'installer dans un environnement virtuel.
three_pineapples
1
Merci pour les modifications. Lorsque j'ai essayé de rechercher `` comment installer les fenêtres pyqt4 virtualenv '', je n'ai rien trouvé et je me suis retrouvé à lire cet article. Bien que je sois d'accord que cela ne répond pas à la question spécifique posée, j'ai pensé que c'était l'endroit le plus logique pour répondre à la question pour la réponse à cette question car je ne pouvais trouver aucune information et me retrouvais de toute façon ici. À votre santé.
Dan
8

Les programmes d'installation précédents de PyQt .exe étaient disponibles directement depuis la page de téléchargement du site Web. Désormais, avec la sortie de PyQt4.12, les programmes d'installation sont obsolètes. Vous pouvez faire fonctionner les bibliothèques d'une manière ou d'une autre en les compilant, mais cela signifierait de gros problèmes.

Sinon, vous pouvez utiliser les distributions précédentes pour résoudre votre objectif. Les programmes d'installation Windows .exe peuvent être téléchargés à partir de:

https://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/

xeon
la source
7

Il semble que vous deviez peut-être faire un peu d'installation manuelle pour PyQt4.

http://pyqt.sourceforge.net/Docs/PyQt4/installation.html

Cela pourrait aider un peu plus, c'est un peu plus dans un format tutoriel / défini par étape:

http://movingthelamppost.com/blog/html/2013/07/12/installing_pyqt____because_it_s_too_good_for_pip_or_easy_install_.html

James Palawaga
la source
3
L'OP tente d'installer PyQt sur Windows. Je suppose que tout compiler à partir de zéro sur cette plateforme n'est pas une option réaliste pour eux.
ekhumoro
6

Avec le dernier python 3.6.5 actuel

pip3 install PyQt5

fonctionne bien

physicien
la source
5

Essayez ceci pour PyQt5:

pip install PyQt5

Utilisez le système d'exploitation sur ce lien pour PyQt4.

Ou téléchargez la roue prise en charge pour votre plate-forme sur ce lien.

Sinon, utilisez ce lien pour le programme d'installation de l'exécutable Windows. J'espère que cela vous aidera à installer PyQt4 ou PyQt5.

Jaidee
la source
4

Pour les fenêtres:

téléchargez la version appropriée du PyQt4 à partir d'ici:

et installez-le en utilisant pip (exemple pour Python3.6 - 64bit)

 pip install PyQt44.11.4cp36cp36mwin_amd64.whl 
Jay Joshi
la source
J'ai reçu le message d'erreur suivant: PyQt4-4.11.4-cp36-cp36m-win_amd64.whl n'est pas un nom de fichier de roue valide.
Daniel González Cortés
Vous devez exécuter la commande pip dans le même répertoire dans lequel "PyQt4-4.11.4-cp36-cp36m-win_amd64.whl" a été téléchargé. (le nom de fichier donné n'est qu'un exemple, vous pouvez en choisir un dans la liste donnée dans le lien donné dans l'article)
Jay Joshi
@JayJoshi j'ai aussi l'erreur ci-dessus.Je suis en train d'exécuter la commande pip dans le même répertoire
Arash
@Arash, veuillez télécharger la version appropriée à partir du lien fourni et l'installer en conséquence. Remarque: le nom de fichier peut être modifié en fonction de la version de PyQt4 que vous avez téléchargée.
Jay Joshi
@JayJoshi cela a résolu.le problème était que mon package choisi n'était pas compatible avec la version python.pour d'autres références cp36 dans les packages nom de fichier signifie python3.6
Arash
3

installez PyQt5 pour Windows 10 et python 3.5+.

pip installer PyQt5

KEYAN TECH
la source
4
OP demande spécifiquement PyQt4pourquoi devrait-il installer à la PyQt5place?
Claudio Cortese
1
vérifier la réponse de
pierce
Mon mauvais, je n'avais pas cette information pendant le review queueprocessus.
Claudio Cortese
1
Vous pouvez toujours partager vos connaissances / opinions dans les commentaires. Dans ce cas, il existe des réponses similaires avec une explication plus claire. Partager, c'est bien, mais si nous partageons tous la même information, cela ne servira à rien pour les gens.
Nader Ghanbari
2

Si vous rencontrez une erreur lors de l'installation de PyQt4.

Erreur: PyQt4-4.11.4-cp27-cp27m-win_amd64.whl n'est pas une roue prise en charge sur cette plate-forme.

Mon type de système est 64 bits, mais pour résoudre cette erreur, j'ai installé PyQt4 du système Windows 32 bits, c'est -à- dire PyQt4-4.11.4-cp27-cp27m-win32.whl - cliquez ici pour voir plus de versions .

entrez la description de l'image ici

Veuillez sélectionner la version appropriée de PyQt4 en fonction de votre version de python installée.

B-shan
la source
1

Vous pouvez également utiliser cette commande pour installer PyQt5.

pip3 install PyQt5
mthecreator
la source
0

J'utilise PyCharm et j'ai pu installer PyQt5.

PyQt4, ainsi que PyQt4Enhanced et windows_whl ont tous deux échoué à s'installer, je suppose que c'est parce que Qt4 n'est plus pris en charge.

Wassinger
la source