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

如何将Pandas中的长A/C号码列以文本格式导出至Excel

解决DataFrame长账号导出Excel保留完整格式的方案

遇到长账号(超过15位)导出Excel时被转成科学计数或截断的问题,有三种实用解决方法:

方法1:提前将账号列转为字符串类型

直接把目标列转成字符串,导出时Excel会以文本形式保存完整内容:

# 假设你的DataFrame叫df,账号列是'A/C号码'
df['A/C号码'] = df['A/C号码'].astype(str)
# 导出文件,index=False去掉行索引
df.to_excel('账号数据.xlsx', index=False)

⚠️ 注意:如果原列是数值类型,要先处理缺失值(比如用fillna('')替换NaN),避免导出后出现'NaN'字样。

方法2:用ExcelWriter指定列格式(不修改原数据)

如果不想改动原DataFrame的数据,可以借助xlsxwriter引擎给目标列设置文本格式:

import pandas as pd

# 初始化ExcelWriter,指定xlsxwriter引擎
with pd.ExcelWriter('账号数据.xlsx', engine='xlsxwriter') as writer:
    df.to_excel(writer, sheet_name='Sheet1', index=False)
    # 获取工作表对象
    worksheet = writer.sheets['Sheet1']
    # 创建文本格式
    text_format = writer.book.add_format({'num_format': '@'})
    # 找到账号列的Excel列号(pandas列索引从0开始,Excel从1开始)
    col_num = df.columns.get_loc('A/C号码') + 1
    # 设置整列为文本格式
    worksheet.set_column(col_num, col_num, None, text_format)

需要先安装依赖:pip install xlsxwriter

方法3:临时技巧——添加制表符前缀

如果只是临时导出应急,可以在账号字符串前加\t,强制Excel识别为文本:

df['A/C号码'] = '\t' + df['A/C号码'].astype(str)
df.to_excel('账号数据.xlsx', index=False)

这种方法会在单元格里留一个制表符,不影响查看账号,但如果需要后续处理数据,记得去掉前缀。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 01:40:00