用于调试Python模块的Visual Studio Code launch.json设置

2024-05-19 07:06:53 发布

您现在位置:Python中文网/ 问答频道 /正文

目前我的文件结构如下:

├── Utilities
|   ├── __init__.py
│   ├── module1.py
├── main.py
├── global_var.py

main.pymodule1.py中,我已经写了import global_var,运行main.py时一切都很顺利

然而,当我试图调试或运行module1.py本身时,它总是显示

Exception has occurred: 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"
}

Tags: 文件pyimportjsoninitmainvarexception
1条回答
网友
1楼 · 发布于 2024-05-19 07:06:53

我不知道文件“global_var.py”的父文件夹的名称是什么,所以我临时将其命名为folder_aa

由于它们不在同一文件夹中,Visual Studio代码找不到路径,因此您可以告诉它要导入的文件的路径:

  1. 将设置行添加到.vscode文件的launch.json文件中:

    "env": {"PYTHONPATH" : "${workspaceRoot}"},

    Visual Studio代码将根据"${workspaceRoot}"查找当前项目的根目录(项目文件夹名称)

  2. 使用“from folder_aa import global_var”而不是“import global_var

    Visual Studio代码将从文件夹“folder_aa”中找到文件“global_var.py”

我创建了一个类似于您提供的目录结构的项目,通过上面的操作,它可以成功导入

我的环境:Python 3.8.3;Visual Studio代码1.47.3;操作系统:Windows\u NT x64 10.0.18362

相关问题 更多 >

    热门问题