J'ai installé brew
et puis
brew install python
brew install python3
Installer flask
avecpip
pip install flask
Essayer
python -c 'import flask'
Mais j'ai eu une exception
ImportError: No module named flask
Définir et exporter PYTHONPATH
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages
Jusqu'ici tout va bien. Mais quand j'ai essayé d'installer un paquet avec pip3
Python 3, j'ai reçu un message d'erreur
Your PYTHONPATH points to a site-packages dir for Python 2.x but you are running Python 3.x!
PYTHONPATH is currently: ":/usr/local/lib/python2.7/site-packages"
You should `unset PYTHONPATH` to fix this.
Comment utiliser les packages de site, sans l' PYTHONPATH
astuce pour faire à la fois pip
et pip3
utilisable à la fois et Python 2 et Python 3 capable d'importer site-packages?
python (anything)
à l'invite du système, je m'attendrais probablement à exécuter le système intégré Python. S'agit-il de la même installation Python dans laquelle vous avez installé le module flask?Réponses:
Vous devriez envisager d'installer pyenv pour cela.
Pour installer, tapez simplement:
Ajoutez ceci à votre
.bash_profile
:Une fois installé, utilisez
pyenv
pour installer les versions de python dont vous avez besoin:Exécutez cette commande après avoir installé une version de Python:
Vous pouvez spécifier plusieurs versions
PYENV_VERSION
à la fois. Disons que si vous avez deux versions de 2.7.6 et 3.3.3. Si vous préférez 2.7.6 à 3.3.3,la source
pyenv
. Pourriez-vous s'il vous plaît donner quelques exemples de la façon de l'utiliser pour résoudre mon problème?Pour utiliser à la fois Python 2 et Python 3 sur OS X, évitez d’utiliser le python pré-installé sur Mac .
Installez python avec homebrew :
Modifier
/etc/paths
:Assurez-vous que
/usr/local/bin
vient avant/usr/bin
. Le premier est utilisé par homebrew et le dernier est l'endroit où l' exécutable python préinstallé sur Mac est installé . Montrez votrePATH
pour un double contrôle:Maintenant, je peux installer des paquets avec pip2 et pip3 pour 2 versions de Python séparément.
la source
/etc/paths
ressemble à ce que vous décrivez. Votre réponse n'a pas fonctionné pour moi.echo $PATH; echo $PYTHONPATH
. Qu'est ce que tu obtiens?