Python中datetime对象与Unix时间戳互转实战

苏见山
苏见山
发布时间:2026-10-13 | 4人浏览过
原创

本文详解Python中datetime对象与Unix时间戳的相互转换方法。通过time.mktime和datetime.fromtimestamp两个核心函数,分别演示了将当前时间转换为Unix时间戳的逐个步骤与链式写法,以及将指定Unix时间戳还原为datetime对象的过程。代码包含完整示例与输出结果,帮助开发者快速掌握时间处理技巧。

Python datetime与Unix时间戳转换概述

在Python开发中,经常需要在datetime对象与Unix时间戳之间进行转换。datetime提供了丰富的时间处理功能,而Unix时间戳则是许多系统和接口通用的时间表示方式。掌握两者之间的转换方法,对于日志处理、API交互和数据库存储等场景至关重要。

下面通过具体的Python代码示例,展示如何实现datetime到Unix时间戳的正向转换,以及Unix时间戳到datetime的反向转换。

datetime转Unix时间戳及反向转换代码实现


  import time
  import datetime
  # 1、datetime转unix时间戳
  # (1)、逐个打印
  n = datetime.datetime.now() #当前时间
  a = n.timetuple()      
  b = time.mktime(a)
  c = int(b)
  # (2)、链式打印
  r = int(time.mktime(datetime.datetime.now().timetuple()))
  # 2、将unix时间戳转换为python的datetime
  u = 1439111214.0    #unix时间戳
  t = datetime.datetime.fromtimestamp(u)
  print('----- datetime => unix ------')
  print('------逐个打印------')
  print('n:',n)
  print('a:',a)
  print('b:',b)
  print('c:',c)
  print('------链式打印------')
  print('r:',r)
  print('----- unix => datetime ------')
  print('t:',t)

运行上述代码后,控制台将输出详细的转换过程及结果。我们可以清晰地看到从datetime对象分解为time.struct_time元组,再通过mktime转换为浮点型时间戳,最终取整为整型Unix时间戳的完整链路。同时,也能看到从浮点型Unix时间戳直接还原为datetime对象的过程。

转换结果分析与总结


  ----- datetime => unix ------
  ------逐个打印------
  n: 2018-05-23 17:11:10.587935
  a: time.struct_time(tm_year=2018, tm_mon=5, tm_mday=23, tm_hour=17, tm_min=11, tm_sec=10, tm_wday=2, tm_yday=143, tm_isdst=-1)
  b: 1527066670.0
  c: 1527066670
  ------链式打印------
  r: 1527066670
  ----- unix => datetime ------
  t: 2015-08-09 17:06:54

通过上述示例,我们掌握了Python中datetime与Unix时间戳互转的核心方法。使用time.mktime结合timetuple()可以将datetime转换为Unix时间戳,而datetime.fromtimestamp()则能实现反向转换。实际应用中,可根据需求选择逐个步骤调试或链式调用,以提高代码效率。

希望本文的内容能帮助您更好地理解和应用Python中的时间转换功能。如果您在学习过程中遇到其他问题,欢迎查阅本站的相关技术文章或留言讨论。感谢您的支持,祝您编程愉快!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表