Python中VScode无法使用autocomplete/intellisence的解决方法

我已经下载了官方 python 插件,并在 setting.json 中正确设置了 pythonPath 路径。 目前问题是,只有 if,while 这一类能给出补全提示,print,import 这些都不行。(如输入 pri,不会给出任何东西) 但程序可以正常运行,输完关键字也会高亮显示。 VScode 版本 1.21 ,python3.6.4


Python中VScode无法使用autocomplete/intellisence的解决方法
10 回复

这问题我遇到过,VSCode的Python智能提示不工作确实挺烦人的。主要就几个地方需要检查:

1. 先确认Python扩展装对了 打开VSCode,按Ctrl+Shift+X,搜"Python",确保装的是微软官方的那个"Python"扩展。装完重启一下VSCode。

2. 选对Python解释器Ctrl+Shift+P,输入"Python: Select Interpreter",选你项目实际用的那个Python环境。右下角状态栏能看到当前用的解释器。

3. 检查语言服务器设置 在VSCode设置里(Ctrl+,),搜"python.languageServer",建议用"Pylance"(默认就是这个)。如果用的Jedi,可以换成Pylance试试。

4. 重建环境缓存 有时候缓存坏了会导致补全失效。删掉项目里的.vscode文件夹(先备份设置),然后重启VSCode让它重新生成。

5. 检查项目结构 如果你的代码分散在不同文件夹,可以在项目根目录加个pyrightconfig.json

{
    "include": ["src", "tests"],
    "exclude": ["**/__pycache__"]
}

6. 终极方案 如果还不行,按Ctrl+Shift+P,运行"Developer: Reload Window"完全重启VSCode,或者试试Ctrl+Shift+P运行"Python: Restart Language Server"。

大部分情况下就是解释器没选对或者缓存问题。

以前已经这样配置过了。。刚又执行了一下,在第三步时报错:“command ‘python.setInterpreter’ not found”,而且状态栏没有让选择 python 环境的选项。。

#2 你谷歌下这个错误,挺多答案的。
建议卸载扩展重装,或者禁用其他扩展看是否还有错误。

感觉 wing 的提示功能是最强的.
当然只说提示功能.

很感谢回复。但是重装拓展未能解决问题,禁用后 Command Palette 中连 python 相关选项都没了。。我在找找原因吧,多谢了。

我前两天也遇到过,把~/.vscode 文件夹删掉就好了。
可以先用 settings sync 同步配置。

请问是删除项目根目录中的.vscode 文件夹吗?我试了下,没有生效。。

是用户目录下的.vscode 文件夹

删除后再重装插件,问题确实解决!请问是何原理呢?

回到顶部