登录
首页 >  文章 >  python教程

Python处理时间戳,Excel如何应用?

时间:2026-05-25 16:58:34 326浏览 收藏

本文深入解析了Python时间戳与Excel日期格式之间的转换原理与实操技巧,揭示了二者因起点不同(Unix时间始于1970年1月1日UTC,Excel始于1900年1月1日)而存在的25569天偏移量这一核心关键,并清晰给出秒级、毫秒级时间戳转Excel可识别日期数值的精确公式;同时强调时区统一(推荐UTC)的重要性,详解pandas自动转换(pd.to_datetime + to_excel配合openpyxl/xlsxwriter引擎)的高效方案,以及Excel中手动设置单元格格式实现正确显示与计算的实用步骤,让开发者轻松跨越Python与Excel的时间壁垒,真正实现时间数据的无缝互通与精准处理。

Python3时间戳如何在excel中运用?

Python3生成的时间戳是整数或浮点数(单位:秒或毫秒),Excel默认不识别这种格式,需转换为Excel可读的日期时间才能正常显示和计算。

时间戳转Excel可识别的日期时间

Excel的日期系统以1900年1月1日为起点(Windows默认),1天 = 1个数值单位。Python时间戳(Unix时间,从1970-01-01 00:00:00 UTC起算)需偏移并换算:

  • 秒级时间戳 → Excel日期数值:`(timestamp + 25569)`(25569是1970-01-01在Excel中的序列号)
  • 毫秒级时间戳 → 先除以1000,再加25569;或直接 `(timestamp / 86400000) + 25569`
  • 注意时区:Python中若用time.time()datetime.now().timestamp(),结果为本地时区对应的时间戳;建议统一转为UTC后再处理,避免Excel中日期偏移

用pandas写入Excel时自动处理时间戳

推荐用pandas配合openpyxl或xlsxwriter引擎,它能自动将datetime对象渲染为Excel日期格式:

  • 先用pd.to_datetime(timestamp, unit='s')把时间戳转为pandas Timestamp
  • 再写入Excel:df.to_excel('out.xlsx', engine='openpyxl')
  • openpyxl会把datetime列识别为日期类型,双击单元格可见正确格式,且支持排序、求差等运算

Excel中手动验证或反向转换

如果已把时间戳数值写入Excel(如直接写入1672531200),想让它显示为日期:

  • 选中该列 → 右键“设置单元格格式” → 选择“日期”或“自定义”(如yyyy-mm-dd hh:mm:ss
  • 若显示为一串大数字(如44927),说明数值已按Excel序列号存储,只需改格式即可显示日期
  • 若仍显示错误,检查是否漏加25569偏移——比如1672531200秒对应2023-01-01 00:00:00 UTC,在Excel中应为1672531200 + 25569 = 1672556769,再除以86400得Excel日期值≈44927.0

基本上就这些。关键不是时间戳本身,而是对齐时间起点和单位换算。用pandas写入最省心,手动处理时记住25569和86400这两个数就够了。

终于介绍完啦!小伙伴们,这篇关于《Python处理时间戳,Excel如何应用?》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>