You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将pandas.DataFrame的显示方向设置为从右到左

能否实现

pandas 原生支持将DataFrame的展示方向调整为从右到左(RTL),无需安装额外第三方扩展,通过内置的显示选项配置即可完成设置。

具体设置方式

全局生效配置

执行以下代码后,当前Python运行环境内所有后续打印、输出的DataFrame都会默认按照从右到左的方向渲染:

import pandas as pd
# 开启RTL显示模式
pd.set_option('display.rtl', True)

display.rtl是pandas内置的显示控制参数,默认值为False(即从左到右展示),设置为True后,列的排列顺序、单元格内文本的对齐逻辑都会自动适配从右到左的阅读习惯,对阿拉伯语、希伯来语等原生RTL语言的内容展示适配效果最好。

如果需要恢复默认的从左到右展示,执行以下代码即可:

pd.set_option('display.rtl', False)

临时生效配置

如果只需要让单个DataFrame的输出临时使用RTL模式,不修改全局配置,可以用pandas的选项上下文管理器实现,退出上下文范围后配置会自动还原:

with pd.option_context('display.rtl', True):
    # 仅该代码块内的DataFrame输出为从右到左
    print(your_target_dataframe)

Jupyter 环境补充配置

如果是在Jupyter Notebook/Jupyter Lab环境中使用,开启上述pandas选项后若发现前端表格渲染方向未同步变化,可以额外执行一行CSS配置让前端渲染适配RTL:

from IPython.core.display import display, HTML
display(HTML("<style>table {direction: rtl;}</style>"))
效果验证

可以用简单的测试DataFrame验证配置是否生效:

test_df = pd.DataFrame({
    "第一列": [1, 2, 3],
    "第二列": ["甲", "乙", "丙"],
    "第三列": [True, False, True]
})
print(test_df)

配置生效后,表格最右侧显示「第一列」,向左依次排列「第二列」「第三列」,和默认从左到右的列顺序完全相反。


内容的提问来源于stack exchange,提问作者Amirreza Soltani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 18:45:42