J'ai installé wxPython 3.0.1.1
, mais je ne parviens pas à import wx
à utiliser Python 3.4.1
. Je reçois l'erreur suivante:
Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 00:54:21)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'wx'
Néanmoins, je peux import wx
si j'utilise Python 2.7
(l'installation par défaut dans mon OS X 10.9
):
Python 2.7.5 (default, Mar 9 2014, 22:15:05)
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
>>>
Comment utiliser wxPython pour Python 3 et plus particulièrement pour Python 3.4.1?
Vous avez deux pythons différents installés sur votre machine (3.4.1 et 2.7.5). Ne vous attendez pas à pouvoir utiliser un paquet installé dans un python (wxPython 3.0.1.1 à python 2.7.5) automatiquement pour être disponible dans un autre python.
De plus, wxPython (classic) ne fonctionne pas pour Python 3. Vous devez disposer de wxPython Phoenix pour pouvoir le faire.
EDIT: La méthode recommandée (par @RobinDunn) pour installer wxPython
(la variété Phoenix qui fonctionnera sur les versions 2.7 et 3, maintenant hébergée sur PyPI ) est en train de faire:
pip install wxPython
Si vous avez la version développeur installée, procédez simplement comme suit:
pip uninstall wxPython_Phoenix
Vous pouvez essayer d’installer l’un des les instantanés wxPython Phoenix dans votre Python 3.4.1. Cependant, sachez que Phoenix n’est pas compatible à 1000% avec classic et que vous risquez de rencontrer un hoquet lors de la réutilisation de code classique ( mais la transition est faisable et vaut la peine).
Vous pouvez trouver une explication/description complète dans le wiki wxPython suivant en cliquant sur le lien suivant:
Il y a plusieurs points importants:
pip
/setuptool
est suffisamment nouveau (> 6.x.x /> 12.x.x)
que les compilations sont "inofficielles" et que pip
refuse de l'installer: vous devez donc ajouter --pre
lors de l'installation avec pip.
que vous renoncez à la vérification SSL --trusted-Host wxpython.org
(n'est plus nécessaire dans les versions modernes où https fonctionne désormais correctement).
Commande complète pour les machines Windows:
C:\python27\scripts\pip.exe install --upgrade --pre -f https://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
Notez que cela installera wxPython Phoenix for Python 2.7.
Pour utiliser wxPython avec votre Python 3.4x, vous devez utiliser wxPython Phoenix - comme d'autres l'ont souligné. Pour l'installer vous pouvez faire:
pip install -U --pre -f http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix
Notez l'espace après le dernier '/' et wxPython_Phoenix
Comme il semble, wxPython n’est pas encore complètement porté pour Python 3, bien que le numéro de version puisse le suggérer. C'est pourquoi les modules wx ne sont pas ajoutés au sys.path
de Python 3.
Vous pouvez choisir d'utiliser wxPython à partir de Python 2.7 ou jeter un oeil à cette entrée SO: Toujours pas de wxPython pour Python 3 (ou 3.3)? C'est ce que @ nepix32 a suggéré.
Vous pouvez également utiliser une autre bibliothèque d'interface graphique qui fonctionne avec Python 3. Voici un list .
Vérifiez votre chemin sys.path dans un interpréteur:
import sys
sys.path
Si vous n'avez pas le bon lien vers le bon répertoire, cela ne fonctionnera pas.
En outre, vérifiez Lib/site-packages dans votre répertoire python pour vous assurer que wx est correctement installé sur votre python 3. (il devrait y avoir un répertoire commençant par "wx-3.0")
Peut-être que les solutions données précédemment fonctionnaient auparavant. Mais ce qui a fonctionné pour moi aujourd'hui (1er juin 2017) a été:
pip install - U - - pre - f https://wxpython.org/Phoenix/snapshot-builds/ wxPython
Toujours vérifier le fichier Readme.txt pour celui-ci ...