问题描述
为了 Debug 一个程序 Dynsplat
, 我复制了另一份程序,并复制了另一份虚拟环境,但是发现 A程序的data_parser.py
在 Vscode 上会自己跑到 Clone_A 程序的 data_parser.py
, 尽管我 开了两个 vscode 的终端,用了两个不同的虚拟环境。
解决
这是 PYTHON 路径的问题。
Python 的模块查找顺序(sys.path)Python 会按照 sys.path 的顺序查找模块。
如果你的项目根目录没有在 sys.path 的前面,Python 可能会优先 import 到其他地方的同名包(比如 site-packages 或其他项目目录)。
方法一,优先 import 你自己的项目代码:
注意这个代码的那个要放在程序的 开头处
python
import sys
sys.path.insert(0, "/home/smiao/Dyn_evosplat")
方法二:在Vscode 指定 python 的环境变量
在 环境变量里面 指定 PYTHON
的路径
bash
"env": {
"PYTHONPATH": "/home/smiao/Dyn_evosplat",
"CUDA_VISIBLE_DEVICES": "0"
}