核心 API
pandas 提供 5 个全局配置 API:
get_option()、set_option()、reset_option()、describe_option()、option_context()。
1. get_option() — 获取选项值
import pandas as pd
pd.get_option('display.max_rows') # 60
pd.get_option('display.max_columns') # 20
pd.get_option('mode.copy_on_write') # False2. set_option() — 设置选项值
pd.set_option('display.max_columns', 50)
pd.set_option('display.precision', 4)
# 同时设置多个选项
pd.set_option('display.max_rows', 100, 'display.width', 120)3. reset_option() — 重置为默认值
pd.reset_option('display.max_rows') # 重置单个选项
pd.reset_option('display.max_columns')
pd.reset_option('^display\\.') # 正则重置所有 display 选项
pd.reset_option('all') # 重置全部选项(会打印提示)
# 静默重置
with pd.option_context('mode.chained_assignment', None):
pass
# 离开上下文后自动恢复4. describe_option() — 查看选项说明
pd.describe_option('display.max_rows') # 单个选项详情
pd.describe_option('mode') # mode 类全部选项输出内容包含:选项名、默认值、描述、适用数据类型 等。
5. option_context() — 上下文管理器(推荐)
临时修改选项,离开 with 块后自动恢复:
with pd.option_context('display.max_rows', 10, 'display.precision', 2):
print(df)
# 退出上下文后恢复默认
print(df)最佳实践
- 在函数内部临时修改选项时,优先使用
option_context()而非set_option(),避免影响全局状态option_context()支持任意数量的「选项 = 值」对
组合示例
with pd.option_context(
'display.max_columns', None,
'display.max_rows', 5,
'display.float_format', '{:,.2f}'.format,
'mode.use_inf_as_na', True
):
print(df.describe())相关笔记
- 20.5 选项类别 - 所有可配置的选项
- 20.4 显示格式化 - 常用显示选项组合