Vim+coc-pyright+venv环境下代码可正常运行但pyright报缺失导入错误的求助
大家好,我最近碰到个特别棘手的问题:用Vim搭配coc-pyright写Python代码时,代码本身跑起来完全没问题,但pyright却一个劲提示“缺失导入”的错误,真的搞懵了。
我的环境是Vim + coc-nvim + coc-pyright,项目用了虚拟环境data_model_venv,目录结构是这样的:
├── README.md ├── data_model_venv ├── env.sample ├── pyrightconfig.json └── src
我已经试了各种解决方案,包括参考相关问题的处理思路,还特意创建了pyrightconfig.json来指定虚拟环境,内容如下:
{ "exclude": [ ".venv" ], "venvPath": "/path/to/root/folder/data_model/", "venv": "data_model_venv" }
执行:CocCommand workspace.showOutput Pyright查看输出,明明显示pyright已经正确识别了虚拟环境的Python路径:
Workspace: /path/to/root/folder
Using python from: /path/to/root/folder/data_model_venv/bin/python
[Info - 13:56:00.795] Pyright language server 1.1.351 starting
[Info - 13:56:00.795] Server root directory: file:///home/myname/.config/coc/extensions/node_modules/coc-pyright/node_modules/pyright/dist
[Info - 13:56:00.797] Starting service instance "data_model"
[Info - 13:56:00.809] Setting pythonPath for service "data_model": "/path/to/root/folder/data_model_venv/bin/python"
[Info - 13:56:00.809] Loading configuration file at /path/to/root/folder/data_model/pyrightconfig.json
[Info - 13:56:00.827] Assuming Python version 3.10
[Info - 13:56:00.827] No include entries specified; assuming /path/to/root/folder/data_model
[Info - 13:56:01.199] Found XX source files
可就算这样,缺失导入的错误还是消不掉,我实在摸不着问题出在哪了,有没有大佬能帮忙分析一下?
备注:内容来源于stack exchange,提问作者Bek




