Data Viewer 是 Python 扩展的 Jupyter 功能,仅支持 .ipynb 或 Python Interactive 窗口,需变量存在于运行内核中且手动触发查看;只读快照,不同步修改,大数据需降维,列宽需双击重置。

VSCode 的 Data Viewer 不是内置功能,它来自 Python 扩展(ms-python.python)的 Jupyter 支持,仅在 .ipynb 文件或交互式窗口中可用,普通 .py 文件里点右键根本不会出现“Open in Data Viewer”选项。
为什么右键没看到 Open in Data Viewer?
这是最常卡住的地方:Data Viewer 本质是 Jupyter 内核的数据表格渲染器,和文件类型、执行环境强绑定。
- 只支持
.ipynb文件,或已启动的Python Interactive窗口(Ctrl+Shift+P → “Python: Create Python Interactive Window”) - 必须先成功运行含
pandas.DataFrame、numpy.ndarray或list of dict的代码块,变量得真实存在于当前内核命名空间里 - 普通
.py文件即使导入了 pandas,右键变量也只会显示“Go to Definition”,没有 Data Viewer 入口 - 如果内核崩溃或未连接,右下角状态栏会显示“Not connected”,此时所有数据操作都失效
如何正确触发 Data Viewer 显示表格?
关键不是“打开”,而是“让变量可被识别并点击”。VSCode 不自动扫描变量,需要你主动输出或悬停。
- 在
.ipynb单元格末尾单独写变量名(如df),运行后右侧会出现小图标,点击即可唤出 Data Viewer - 在交互式窗口中,把光标停在变量名上,等悬浮面板出现 → 点击右上角
▶图标(标注为 “View value in Data Viewer”) - 支持直接查看表达式结果,比如输入
df.head(10)并运行,同样能点开 - 不支持嵌套访问(如
data['items'][0]),必须赋值给一个顶层变量再查看
Data Viewer 里改数据会同步回内核吗?
不会。Data Viewer 是只读快照,所有编辑(增删行、改单元格)仅限当前视图,关掉就丢,不影响原始变量。
- 想持久修改,必须回到代码里用
df.loc、df.iloc或df.drop()等操作,再重新运行 - 排序、筛选、列隐藏等 UI 操作不影响内核数据,但会影响后续导出内容(Export to CSV 保存的是当前视图状态)
- 大数据集(>10w 行)加载会明显变慢,建议先用
df.sample(5000)或df.head()降维再看
真正容易被忽略的是:Data Viewer 的列宽自适应只在首次加载时生效,之后拖拽调整宽度,下次打开还是默认窄列——得手动双击列标题右侧边缘才能重置。


















