【发布时间】:2020-06-18 09:08:40
【问题描述】:
我正在使用烧瓶开发 Python 项目。通过backend_code/ 目录下的python3 app.py 启动后端程序工作正常。
不过今天试了下,结果显示
my_user_namedeMBP:backend_code my_user_name$ python3 app.py
* Serving Flask app "app" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
* Restarting with stat
/Library/Frameworks/Python.framework/Versions/3.6/Resources/Python.app/Contents/MacOS/Python: can't open file '/Users/my_username/folder_name/**project_name/app.py**': [Errno 2] No such file or directory
这是项目结构:
+-- folder_name
+-- project_name
+-- frontend_code
|
+-- backend_code
+-- app.py
当我移回目录folder_name/ 并运行backend_code/python3 app.py 时它运行良好,但我尽量不这样做,因为它会导致我的后端代码中的某些文件路径读取无效。
我不明白我启动了解释器并在 backend_code/ 目录下运行 app.py 但错误消息显示它正在寻找 project_name/ 下的 app.py 显然找不到 app.py (它在 project_name/backend_code/ 下)。
我能记得的唯一可能导致此问题的事情是我将我的 pip 从 9.* 更新到 12.*(我已经降级了它,但错误仍然存在)。
其他信息可能有用:
我正在使用 vscode。
pip -V => pip 9.0.1 from /usr/local/lib/python2.7/site-packages (python 2.7)
pip3 -V => pip 9.0.3 from
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (python 3.6)
python --version => Python 2.7.15
python3 --version => Python 3.6.5
谁能告诉我该怎么做?这是为什么?感谢您的帮助!
【问题讨论】:
-
您能告诉我们您尝试在其中运行
app.py的cwd 吗?如果您在project_name目录中,则需要cd ..才能转到folder_name,然后只需 cdbackend_code并运行该应用程序。 -
@Patch 感谢您的回复。 cwd 是
/Users/user_name/folder_name/project_name/backend_code,这是我希望使用python3 app.py运行app.py 的目录。它通常运作良好。 -
由于您的错误,您不在此目录中。
-
是的,这让我很困惑。我很确定我在那个目录中,否则它会在开始时显示“app.py not found”。
-
你试过用cmd运行吗?
标签: python python-3.x linux flask backend