悬停提示不出现主因是语言服务未获取足够类型信息,需先确认右下角语言模式为Python (Pylance)、已安装并启用Pylance扩展、python.languageServer设为"Pylance",再检查类型注解或docstring是否缺失。

悬停提示不出现,大概率不是设置问题,而是类型信息没被语言服务拿到。
悬停函数名没反应?先看右下角语言模式和Pylance状态
VSCode 不靠“猜”来显示参数,它依赖 Pylance 解析类型定义。如果右下角显示的是 Plain Text 或 Python (Jedi),悬停就基本不会出完整参数。
- 点击右下角语言标识 → 选
Python (Pylance)(不是 Python 或 Python (Jedi)) - 确认已安装
Pylance扩展(Microsoft 官方出品),禁用Pyright(二者冲突) - 打开设置搜
python.languageServer,值必须是"Pylance" - 重启窗口(
Developer: Reload Window),再试悬停
悬停只显示 arg0、arg1?缺类型注解或 docstring
没有类型信息,Pylance 只能回退到位置参数命名。比如 def process(x, y): 悬停只会显示 process(arg0, arg1),毫无意义。
- 给参数加类型提示:
def process(x: str, y: dict) -> bool: - 补 Google/NumPy 风格 docstring:
"""@param x: input string @param y: config dict""" - 第三方库如
cv2、pandas缺类型?装types-cv2或types-pandas(pip 安装) - 没装类型包时,
help(cv2.imread)在终端里仍可用,但不属于悬停范畴
Ctrl+Shift+Space 没反应?别只盯快捷键
这个快捷键只是“手动触发参数提示”,它和悬停是两套机制。按了没反应,说明语言服务根本没加载成功,不是快捷键绑错了。
让 macOS 自动化像说话一样简单 —— 用代码控制你的 Mac,无需学习 AppleScript 系统要求 macOS 14+ (Sonoma) Python 3.9+ 需要开启:辅助功能 + 屏幕录制权限
- 先确认当前文件是
.py后缀,且右下角是Python (Pylance) - 设置里搜
editor.parameterHints.enabled,确保为true - 快捷键本身可被系统拦截:macOS 上
Cmd+Shift+Space和 Spotlight 冲突,需在系统设置里关掉 Spotlight 快捷键 - 若光标不在括号内(如写完
func()再去按),也不会触发——必须卡在func(|)这个位置
悬停内容不全或消失太快?注意上下文复杂度
VSCode 主动抑制提示,不是 bug,是防干扰策略。常见于嵌套太深、语法未闭合、或链式调用中间位置。
- 写
df.groupby('x').apply(|)时悬停可能空白——把光标移到apply上再悬停 - 模板字符串里调用函数(
`${foo(}`)会抑制提示,因为 AST 解析失败 - 有语法错误(比如少了个
: 或括号不匹配)时,整个文件的类型推导都会降级 - 大型项目首次打开可能延迟几秒,等左下角 Pylance 状态从 “Loading…” 变成 “Ready” 再试
真正卡住的地方往往不是“怎么开”,而是“为什么开了却看不到”——类型定义是否可达、语言服务是否真在跑、当前上下文是否被判定为“不可信”,这三者比任何设置开关都关键。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!










