gpt4 book ai didi

python - Flask运行错误python,虚拟环境中没有名为flask的模块

转载 作者:太空宇宙 更新时间:2023-11-03 20:36:37 24 4
gpt4 key购买 nike

抱歉,已经四处寻找这个问题的答案,并且看到有人遇到类似的问题,但到目前为止还没有解决这个问题。

我正在尝试在安装了 Flask 的虚拟环境( venv )下设置一个简单的 Flask 应用程序。我的主目录下有一个文件夹 simple_app/ ,它有一个文件 __init__.py ,其内容为:

    from flask import Flask

def create_app():
app = Flask(__name__)

@app.route('/')
def mainPage():
return 'Hi!'

return app

# to try and run app from script
if __name__ == '__main__':
app = create_app()
app.run()

我通过 .env 指定了 FLASK_APP 和 FLASK_ENV 。如果我尝试flask run我得到以下输出:

 $ flask run
* Serving Flask app "simple_app" (lazy loading)
* Environment: development
* Debug mode: on
* Restarting with stat
...\venv\scripts\python.exe No module named ...venv\Scripts\flask

我可以插入print()语句,这些语句的输出将与此错误一起显示。

但是如果我运行 python simple_app/__init__.py我的应用程序启动得非常好(如 "__init__" )。

此外,如果我运行 flask routes我明白了

$ flask routes
Endpoint Methods Rule
-------- ------- -----------------------
mainPage GET /
static GET /static/<path:filename>

这样 Flask 似乎确实了解我的应用程序。

我以前使用过这种类型的结构,没有出现任何问题,所以不太确定这里出了什么问题,尽管我对 Flask 还很陌生。

非常感谢任何人能够提供的任何帮助!

最佳答案

我看不出你的设置有什么问题。我刚刚创建了完全相同的应用程序,具有(据我所知)相同的环境,并且一切正常。您尚未指定您使用的是哪个版本的 Python,因此以下是我执行的完整步骤(也许您可以发现您错过的内容):

  • 使用Python 3.7.4
  • 使用python -m venv venv创建虚拟环境
  • 使用source venv/bin/activate激活虚拟环境
  • 使用pip install Flask安装了flask
  • 创建了下面的文件夹结构,并将代码复制到一个文件中
  • 运行以下命令:
export FLASK_APP=simple_app`
export FLASK_ENV=development`
flask run

这使得应用程序按预期运行。

文件夹结构如下,只有一个.py文件:

.
└── simple_app
└── __init__.py

该 .py 文件的内容与您所述的完全相同:

__init__.py:

from flask import Flask

def create_app():
app = Flask(__name__)

@app.route('/')
def mainPage():
return 'Hi!'

return app

# to try and run app from script
if __name__ == '__main__':
app = create_app()
app.run()
$ flask run
* Serving Flask app "simple_app" (lazy loading)
* Environment: development
* Debug mode: on
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: [snip]

关于python - Flask运行错误python,虚拟环境中没有名为flask的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57124701/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com