作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在运行 run.py 文件时遇到问题。我的文件结构如下所示:
另一个名为“run.py”的 python 文件与 python3 一起位于 flask/bin 中。我的 run.py 文件很简单:
#!flask/bin/python3
from app import app
app.run(debug=True)
但是运行“python3 run.py”会抛出错误:
$ python3 run.py
Traceback (most recent call last):
File "run.py", line 2, in <module>
from app import app
ModuleNotFoundError: No module named 'app'
app.py 看起来像:
from flask import Flask
app = Flask(__name__)
from app import views
我对如何解决这个问题感到困惑,因为我一直在弄乱目录,例如将 app.py 放入 flask/bin 文件夹并将其放在我上面目录中显示的所有文件夹之外,但是这些方法都没有用为我。
最佳答案
您的 run.py 无法导入应用程序,因为它在 bin 文件夹中看不到应用程序,python 发生的情况是所有 python 文件都被视为模块,并且文件夹带有 init .py 文件被视为包,因此 run.py 将开始寻找应用程序包以导入应用程序模块,但它将在 bin 目录中搜索。通读Python documentation充分理解模块和包。现在你可能想要重新组织你的应用程序目录,如下所示:
dir app
file app.py
dir flask
file run.py
通过确保 run.py 和 app 目录在目录中的同一级别,run.py 现在将能够从 app 导入。
希望对你有帮助
关于python - Flask 教程故障排除 : ModuleNotFoundError: No module named 'app' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43335289/
我是一名优秀的程序员,十分优秀!