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

如何用Pandas结合Xlsxwriter实现Excel千分位用点分隔

用XlsxWriter设置Excel数字千分位分隔符为点(.)且不修改Pandas数值

只需修改XlsxWriter的数字格式字符串,就能在不改动Pandas原始数值的前提下,让Excel中的数字用点作为千分位分隔符。

修改后的完整代码:

import pandas as pd

df = pd.DataFrame({"a": [1000.12, 123123123.23]})
writer = pd.ExcelWriter('example.xlsx', engine='xlsxwriter')

df.to_excel(writer, sheet_name='Sheet1', index=False)

workbook = writer.book
worksheet = writer.sheets['Sheet1']

# 格式说明:整数部分每三位用点分隔,小数部分保留两位用逗号分隔
# 若只需显示整数,改用格式 '#.###' 即可
FORMAT = '#.###,##'
num_format = workbook.add_format({'num_format': FORMAT})
worksheet.set_column('A:A', None, num_format)

writer.save()

关键说明:

  • Excel自定义格式中,#.###,## 实现了千分位用点(.)、小数分隔用逗号(,)的显示效果:1000.12 会显示为 1.000,12,123123123.23 显示为 123.123.123,23。
  • 如果只需要展示整数部分的千分位(如示例中的 1.000、123.123.123),将格式字符串改为 #.### 即可,此时会自动舍去小数部分的显示(但Pandas内的原始数值不变)。
  • 这种操作仅修改Excel单元格的显示格式,完全不会影响DataFrame中存储的原始数值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 17:45:31