例如 my-project 的 Python 项目的目录结构长这样:
my-project/
└── src
└── main_folder
├── main.py
└── something.py
执行 main.py 代码,则使用命令 python src/myproject/main.py。
问题是,如果在 main.py 中写上:
import something
VSCode 会说找不到包,解析不了。但是 python src/myproject/main.py 是可以正常运行的。于是强迫症犯了。
若把 import something 改写为 from src.main_folder import something 虽然让 VSCode 找得到包,但不太符合直觉——我更希望把 main_folder 视为主目录,而且这样一来 python src/myproject/main.py 命令就会出错了。
其实很好解决。在项目根目录创建 .vscode 文件夹,里面 写一个 setting.json:
{
"python.analysis.extraPaths": [
"./src/main_folder"
]
}
现在的目录结构会是这个样子:
my-project/
├── .vscode
│ └── setting.json
└── src
└── main_folder
├── main.py
└── something.py
设置好后可以发现,VSCode 能找到包了。