Après avoir lu le titre de ce message, n'essayez pas de faire du double en premier car le contenu ci-joint peut être demandé de manière différente. Btw, je suis très nouveau en python et commence à apprendre maintenant pour les exigences de travail.
voici mes dépendances
virtualenv --version => 15.0.2
p >
pip --version => 19.0.3
flask --version => 1.0.2, Python 2.7.10 (par défaut, 17 août 2018 , 19:45:58)
python --version => 3.7.1
Et voici mon code source de main.py
from flask import Flask app = Flask(__name__) @app.route("/") def home(): return "Hello, World!"
Le problème est une erreur de suivi rencontrée lors du rendu comme python main.py
Traceback (dernier appel en dernier): fichier "main.py", ligne 1, dans à partir de l'importation de flask Flask ModuleNotFoundError: Aucun module nommé 'flask'
Mais quand je rendais comme FLASK_APP = main.py flask run
, cela fonctionnait. Veuillez me faire savoir quelle est la différence entre python ...
et FLASH_APP = ...
3 Réponses :
pip
peut pour une raison quelconque pointer vers pip
à l'échelle du système (qui sur de nombreux systèmes correspond à Python 2.7). Pour utiliser pip
depuis virtualenv, utilisez la commande python -m pip
. La commande suivante fera l'affaire:
sudo apt remove python-flask pip install flask
Une autre possibilité est que vous ayez installé flask via apt
et non pip
. Voici la différence entre les deux: Quelle est la différence entre `sudo apt install python3-flask` et` pip3 install Flask`?
La commande flask
est désormais disponible dans tout le système.
Si tel est le cas, désinstaller flask avec apt
et l'installer avec pip
devrait faire l'affaire:
pip uninstall flask && python -m pip install flask
Comme l'a dit Pavel; vous pouvez utiliser python 2.7 au lieu de python 3 pour exécuter votre projet ...
J'ai eu ce problème et en utilisant cette commande au lieu de la commande de Pavel, problème résolu
pip uninstall flask && python3.7 -m pip install flask
Vous pouvez remplacer flask par n'importe quelle autre bibliothèque et cela fonctionnera
J'espère que cela fonctionne pour tout le monde voit cela aussi
Si vous utilisez Visual Studio Code IDE avec pipenv et obtenez l'erreur ci-dessus, vous devez vérifier ceci lien.
Il semble que vous ayez installé flask qui utilise la version Python 2.7, mais votre python par défaut est Python 3.7.1. Affichez-vous les versions de package de votre virtualenv ou certains de ces packages sont-ils installés globalement?
@bagljas c'est installé dans virtualenv
Pouvez-vous s'il vous plaît vérifier la sortie des commandes suivantes dans le terminal dans lequel la commande
flask run
fonctionnait etpython
non?quel python
,quel pip
etquel flacon
. Ils devraient tous afficher les chemins d'accès aux exécutables dans votre virtualenv, par exemple~ / .virtualenvs / tmp-ec6bfce85be4e9c8 / bin / python
De plus, pour que votre application fonctionne via la commande
python main.py
, vous devez ajouter `if __name__ == '__main__': \ n app.run ()`Est-ce que
pip uninstall flask && python -m pip install flask
fera l'affaire?@bagljas sont tous les deux sous mon répertoire de projet
/ Users / user / Documents / Projects / Python / flask / bin / ...
@PavelVergeev qui fonctionnait. Cool...
@PPShein génial! Cela signifie que probablement la commande
pip
pointe vers le mauvaispip
à l'échelle du système. Pour utiliser le pip local, faitespython -m pip
.