时间戳需转换为Excel日期格式才能正确显示和计算。Python时间戳从1970年1月1日(UTC)起算,而Excel以1900年1月1日为起点,两者相差25569天。因此,将秒级时间戳转为Excel日期值公式为:(timestamp / 86400) + 25569;毫秒级则先除以1000或整体除以86400000后再加25569。注意时区问题,推荐使用UTC时间避免本地时区偏差。若用pandas写入Excel(如df.to_excel),可通过pd.to_datetime(timestamp, unit='s')自动转换为Timestamp对象,配合openpyxl或xlsxwriter引擎可识别为日期类型,支持排序、计算等操作。若手动在Excel中处理,确保数值已加上25569偏移,并设置单元格格式为日期形式即可正常显示。验证时可检查时间戳1672531200对应Excel值约44927,即2023-01-01 00:00:00 UTC。关键在于对齐时间起点与单位换算,掌握25569和86400两个核心数值即可。

Python3生成的时间戳是整数或浮点数(单位:秒或毫秒),Excel默认不识别这种格式,需转换为Excel可读的日期时间才能正常显示和计算。
Excel的日期系统以1900年1月1日为起点(Windows默认),1天 = 1个数值单位。Python时间戳(Unix时间,从1970-01-01 00:00:00 UTC起算)需偏移并换算:
time.time()或datetime.now().timestamp(),结果为本地时区对应的时间戳;建议统一转为UTC后再处理,避免Excel中日期偏移推荐用pandas配合openpyxl或xlsxwriter引擎,它能自动将datetime对象渲染为Excel日期格式:
pd.to_datetime(timestamp, unit='s')把时间戳转为pandas Timestampdf.to_excel('out.xlsx', engine='openpyxl')
如果已把时间戳数值写入Excel(如直接写入1672531200),想让它显示为日期:
立即学习“Python免费学习笔记(深入)”;
yyyy-mm-dd hh:mm:ss)1672531200 + 25569 = 1672556769,再除以86400得Excel日期值≈44927.0基本上就这些。关键不是时间戳本身,而是对齐时间起点和单位换算。用pandas写入最省心,手动处理时记住25569和86400这两个数就够了。
以上就是Python3时间戳如何在excel中运用?的详细内容,更多请关注php中文网其它相关文章!
全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号