vscode 如何关闭 pylance 跳转到 pyi 文件?

图片.png

但我要看源码的时候,按下 ctrl+鼠标左键,却没有跳转到 py 文件中,而是到了一个 pyi 文件中,看了一下路径,是来自一个叫做 pylance 插件下面的!

图片.png

这个插件挺好用的,不想卸载,但是这种跳转到 pyi 的做法实在是太蠢了!

如果关闭?我要看 py 文件,而不是 pyi 文件!!!

设置项实在是太多了,都不知道应该用哪个?

图片.png


看到网上有说是因为虚拟环境下没有安装对应的包导致的,但显然我不是这个问题!

图片.png

阅读 5.7k
1 个回答

BaseManager 里确实没有 filter 的定义。pylance 只能找到 pyi 的结果。.py 文件里是没有的。

如果两个都有的化,它是可以跳转到 .py 文件的定义的。


BaseManger 的派生类是可以通过 BaseManger.from_queryset 动态生成的,其中的方法也是通过 BaseManager._get_queryset_methods 动态创建的。这些类跟方法的定义在 .py 里都是不存在的。

pylance 通过 pyi 为这些动态定义的方法写了声明,从而可以支持输入补全、参数提示、静态类型检查等等功能。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题