目前我的文件结构是这样的:
├── Utilities
| ├── __init__.py
│ ├── module1.py
├── main.py
├── global_var.py
在main.py
和module1.py
我已经写了import global_var
,当我运行时一切顺利main.py
。
但是,当我尝试调试或module1.py
自行运行时,它总是显示
发生异常:ModuleNotFoundError
No module named 'global_var'
而且我必须手动移动module1.py
到同一个文件夹,global_var.py
以便它可以成功运行。
我想知道如何设置launch.json
停止移动文件。这是我launch.json
现在的情况:
{
"name": "Python: Modules",
"type": "python",
"request": "launch",
"program": "${file}",
"cwd": "${workspaceFolder}",
"console": "integratedTerminal"
}
我不知道文件“ global_var.py
”的父文件夹的名称是什么,所以我暂时将其命名为folder_aa
.
由于它们不在同一个文件夹中,Visual Studio Code 找不到路径,因此您可以告诉它要导入的文件的路径:
将设置行添加到launch.json
文件的.vscode
文件中:
"env": {"PYTHONPATH" : "${workspaceRoot}"},
Visual Studio Code 会根据"${workspaceRoot}"
.
使用“ from folder_aa import global_var
”代替“ import global_var
”。
Visual Studio Code 将从文件夹“folder_aa”中找到文件“global_var.py”。
我创建了一个类似于你提供的目录结构的项目,通过上面的操作,就可以成功导入了。
我的环境:Python 3.8.3;Visual Studio 代码 1.47.3;操作系统:Windows_NT x64 10.0.18362
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句