PyCharm中如何正确显示带样式的pandas DataFrame并支持SciView展示
问题解决
1. Styler对象不渲染仅打印内存地址的问题
原因
pandas的Styler是基于HTML生成样式的专用对象,IPython.display方法仅在支持HTML渲染的环境(如Jupyter Notebook、PyCharm交互控制台)下能解析渲染为样式表格,直接运行.py脚本时普通控制台仅支持纯文本输出,无法解析HTML内容,因此只会打印对象的内存地址。
解决方法
分两种使用场景选择方案:
场景1:在纯文本控制台打印无索引、内容居中的DataFrame
直接使用pandas内置的to_string方法实现,无需调用Styler:
import pandas as pd data = {'Name':['Tom', 'nick', 'krish', 'jack'], 'Age':[20, 21, 19, 18]} df = pd.DataFrame(data) # 设置index=False隐藏索引,justify='center'实现内容居中 print(df.to_string(index=False, justify='center'))
输出效果会自动满足无索引、所有列内容居中的要求。
场景2:需要查看带样式的渲染表格
不要直接运行整个.py脚本,改用PyCharm自带的Python Console(交互控制台)逐段执行代码,此时执行display(df.style.set_properties(**{'text-align': 'center'}).hide(axis='index'))(pandas 1.4+版本已废弃hide_index方法,改用hide(axis='index')即可)即可正常渲染出样式化表格。
2. PyCharm中展示DataFrame到SciView的方法
SciView是PyCharm专门用来预览表格、图表的工具,支持以下两种方式打开DataFrame:
- 交互控制台模式下,生成DataFrame后,在右侧变量面板找到对应DataFrame变量,右键选择
View as DataFrame,就会自动在SciView窗口加载展示该表格。 - Debug模式下,断点停住后,在Debug面板的变量区找到对应DataFrame变量,同样右键选择
View as DataFrame即可调用SciView预览。
注意:PyCharm的数据库工具窗口是用于连接真实数据库、查询库表的专用功能,不支持直接展示pandas DataFrame,DataFrame预览使用SciView即可满足需求。
内容的提问来源于stack exchange,提问作者abhinit21
相关产品推荐
相关产品推荐

