vscode编辑python时跳转到.pyi而不是源码的问题
问题描述
最近在使用vscode编辑python代码,使用 ctrl + 鼠标左键 进行跳转到源代码时发现,编辑器跳转到了vscode自动生成的 pyi 类型检查文件,而不是第三方库的源码文件,而pyi文件中只有相应方法的类型检查,并没有注释和代码逻辑,看起来很是头疼。
问题解决
折腾一番后发现了问题出在了python解释器的选择上。 我本机在安装了python后,还通过virtualenv安装了多个虚拟python环境,如果你在当前vscode使用的虚拟环境中调用了没有安装在当前虚拟环境的第三方库,那么vscode就会跳转到其自动生成的pyi文件中。
以我本机为例:
- 基础python环境:D:\Anaconda\python.exe,安装了selenium库
- 虚拟环境:D:\TF-test\TF-2\Scripts\python.exe,没有安装selenium库
如果当前使用的是虚拟环境 的python解释器,但是我在代码中调用了selenium库,那么点击跳转时,就会跳转到pyi文件: 
此时,如果切换回默认python环境,则代码可以跳转到源码:
点击左下角的解释器切换选项,在顶部弹出的可用解释器路径中,选择回默认环境:   此时再点击跳转,就会跳转到源码: 
默认设置
为了方便,可以在文件 -首选项 -设置 -扩展 -python 的设置中,将Default Interpreter Path 设置为默认向使用的解释器路径,方便使用: 
|