如何在Visual Studio Code中永久配置Python模块搜索路径
核心问题原因
你遇到的问题本质是VS Code默认使用的Python解释器,和你之前用Spyder时pip装包对应的解释器不是同一个,之前装的模块都在Anaconda自带的Python路径下,VS Code没匹配到对应路径就会找不到包。优先推荐先尝试匹配解释器的方案,比手动加路径更稳妥,不会出现版本冲突问题。
方案一:匹配正确的Python解释器(首推)
操作步骤非常简单:
- 打开VS Code中任意一个
.py后缀的Python文件 - 看窗口底部右下角的状态栏,会显示当前选中的Python版本号,点击这个区域
- 在弹出的解释器选择列表里,找到名称带
anaconda标识的对应Python版本,点击选中即可 - 重启VS Code的集成终端,再导入之前的模块测试,大部分情况这一步就能解决问题
方案二:永久添加自定义模块路径
如果你确实有自己写的本地模块需要全局识别,不需要每次都用sys.path.append,可以用以下两种方法任选:
方法1:VS Code全局配置
- 打开VS Code设置页,快捷键是
Ctrl+,(Windows/Linux系统)或Cmd+,(Mac系统) - 在顶部搜索框输入
python.envFile,查看默认配置项的值为${workspaceFolder}/.env - 在你电脑的任意位置新建一个纯文本文件,命名为
.env(注意文件名开头有个英文句号,没有后缀名) - 在
.env文件里添加一行内容:
多个路径用分号(Windows)或冒号(Mac/Linux)分隔即可,比如Windows下写法为PYTHONPATH=你的模块路径PYTHONPATH=C:\Users\用户名\my_modules;D:\test_modules - 回到刚才的VS Code设置页,把
python.envFile的配置值改成你刚才新建的.env文件的绝对路径,保存设置后所有VS Code的Python项目都会自动读取这个路径配置,不需要每个项目单独设置
方法2:Python全局路径配置(所有IDE通用)
这个方法修改的是Python本身的搜索路径,不管用什么IDE都生效:
- 打开VS Code终端,输入命令
python -c "import sys; print([p for p in sys.path if 'site-packages' in p][0])",执行后会输出site-packages文件夹的绝对路径 - 打开这个site-packages文件夹,新建一个纯文本文件,命名为
custom_path.pth(前缀随便起,后缀必须是.pth) - 每一行写一个你要添加的模块绝对路径,写完保存即可,之后Python启动时会自动把这些路径加到搜索列表里
内容的提问来源于stack exchange,提问作者nnm06
相关产品推荐
相关产品推荐

