我想在 VSCode 中使用 Python 和 Flask 调试应用程序。我已经安装了 Flask,应用程序通过 cmd 运行得很好。但是,当我尝试通过 VSCode 对其进行调试时,它会出现以下错误:
cd 'c:\Users\Aditi\CleanHandymanApp';
${env:FLASK_APP}='NewApp'; ${env:PYTHONIOENCODING}='UTF-8';
${env:PYTHONUNBUFFERED}='1'; & 'C:\Users\Aditi\envs\CleanHandymanApp\Scripts\python.exe'
'c:\Users\Aditi\.vscode\extensions\ms-python.python-2018.10.1\pythonFiles\experimental\ptvsd_launcher.py' '--client' '--host'
'localhost' '--port' '63143' '-m' 'flask' 'run' '--no-debugger' '--no-reload'
No module named flask
你能帮我么。
原文由 Lily 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果将 Flask 加载到包含子文件的文件夹中,有时会出现此错误。例如,如果您使用虚拟 shell 实例将 flask 加载到父文件夹中,但您在子文件中运行代码(假设父文件称为 crypto_files 并且其中是一个名为 blockchain.py 的 python 源代码文件),则为了让烧瓶正常运行,你必须像这样运行文件:
python crypto_files/blockchain.py
这允许您的机器看到 Flask 在 crypto_files 中运行,但也运行 blockchain.py 。
或者,您可能只需将 Flask 重新加载到子(子)文件中… blockchain.py 然后从子文件中运行它。
这种复杂性主要是由于现代“虚拟实例”和外壳,它们基本上就像在您的实际硬盘中创建虚拟计算机一样。 Flask 这样做是为了避免到处运行,并且由于 Flask 是模块化的,它允许您的每个项目运行 Flask 的不同模块化配置以精确地适应每个项目。另一种选择会很糟糕:你必须为每个项目加载最胖的 Flask 版本和几十个附加组件,所以你所有的 git 和你所有的项目都会有大量的额外代码。 Flask 被构建为非常小的核心以避免这个问题(太冗长了!)。