Python日期和时间戳的转换的实现方式

 更新时间:2024年10月20日 16:01:32   作者:西京刀客  
Python中日期和时间的处理涉及到time和datetime模块,time模块可实现时间戳与格式化时间字符串的转换,而datetime模块则提供更加直接易用的接口,本文详细给大家介绍了Python日期和时间戳的转换的实现方式,需要的朋友可以参考下

Python 日期和时间戳的转换

Python中处理时间的模块

Python中处理时间的模块有time、datetime和calendar。

在Python中表示时间的方式:

  • 时间戳:10位整数位和若干小数位,例如 1551153156.6358607
  • 元组(struct_time): 含有9个元素的元组,例如 (tm_year=2011, tm_mon=9, tm_mday=28, tm_hour=10, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=271, tm_isdst=-1)
  • 格式化字符串: 格式化的时间字符串, 例如 ‘2019-02-26 12:45:46’

time模块,以元组(struct_time)为核心实现时间戳和格式化时间字符串的相互转换。
datetime模块,以datetime类实例对象为核心实现时间戳和格式化时间字符串的相互转换。

Python的time模块

time模块是通过调用C库实现的,所以在有些平台上无法使用。大部分接口和C标准库的time.h一致。

使用time模块来进行格式化时间字符串和时间戳的相互转换。

将时间戳转换为格式化字符串

使用time模块获取当前时间的时间戳:

>>> import time
>>> time.time()
1551157481.034565

将时间戳转换为元组(struct_time):

>>> time.localtime(time.time())
time.struct_time(tm_year=2019, tm_mon=2, tm_mday=26, tm_hour=13, tm_min=2, tm_sec=1, tm_wday=1, tm_yday=57, tm_isdst=0)

将元组(struct_time)转换为格式化时间字符串:

>>> time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
'2019-02-26 13:04:41'

Python 的datetime模块

和time模块相比,datetime模块提供更直接易用的接口,功能也更加强大。

datetime模块提供了处理日期和时间的类,既有简单的方式,也有复杂的方式。它虽然支持日期和时间算法,但其实现是重点是输出的格式化操作和更加有效的属性提取功能。

datetime模块中定义的类(这些类的对象都是不可变的):

datetime.date: 表示日期,常用的属性有year、month和day

datetime.time: 表示时间,常用的属性有hour、minute、second和microsecond

datetime.datetime: 表示日期时间

datetime.timedelta: 表示两个date、time和datetime实例之间的时间间隔,最小单位可达微秒

datetime.tzinfo: 时区相关对象的抽象基类,由time和datetime类使用

datetime.timezone: Python3.2中新增的功能,实现tzinfo抽象基类的类,表示与UTC的固定偏移量

使用datetime模块中的datetime类将时间戳转换为格式化时间字符串

使用datetime类将时间戳转换为datetime实例:

>>> import time
>>> from datetime import datetime
>>> dt = datetime.fromtimestamp(time.time())
>>> dt
datetime.datetime(2019, 2, 26, 15, 27, 28, 678923)

将datetime实例转换为格式化字符串:

>>> dt.strftime('%Y-%m-%d %H:%M:%S')
'2019-02-26 15:27:28'

使用datetime模块中的datetime类将格式化时间字符串转换为时间戳

使用datetime类将格式化字符串’2019-02-26 15:27:28’转换为datetime实例:

>>> st = '2019-02-26 15:27:28'
>>> dt = datetime.strptime(st, '%Y-%m-%d %H:%M:%S')
>>> dt
datetime.datetime(2019, 2, 26, 15, 27, 28)

将datetime实例转转为元组(struct_time):

>>> tp = dt.timetuple()
>>> tp
time.struct_time(tm_year=2019, tm_mon=2, tm_mday=26, tm_hour=15, tm_min=27, tm_sec=28, tm_wday=1, tm_yday=57, tm_isdst=-1)

将元组(struct_time)转换为时间戳:

>>> time.mktime(tp)
1551166048.0

也可以直接使用datetime实例的timestamp()函数直接获取时间戳:

>>> dt.timestamp()
1551166048.0

使用datetime类获取当前日期和时间

使用datetime类获取当前日期:

>>> datetime.now().date().strftime('%Y-%m-%d')
'2019-02-26'

使用datetime类获取当前时间:

>>> datetime.now().time().strftime('%H:%M:%S')
'15:48:43'

到此这篇关于Python日期和时间戳的转换的实现方式的文章就介绍到这了,更多相关Python日期和时间戳转换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python编程开发之textwrap文本样式处理技巧

    python编程开发之textwrap文本样式处理技巧

    这篇文章主要介绍了python编程开发之textwrap文本样式处理技巧,实例分析了Python中textwrap的常用方法与处理文本样式的相关使用技巧,需要的朋友可以参考下
    2015-11-11
  • Django使用mysqlclient服务连接并写入数据库的操作过程

    Django使用mysqlclient服务连接并写入数据库的操作过程

    这篇文章主要介绍了Django使用mysqlclient服务连接并写入数据库,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • 通过实例了解Python str()和repr()的区别

    通过实例了解Python str()和repr()的区别

    这篇文章主要介绍了通过实例了解Python str()和repr()的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • pycharm中TensorFlow调试常见问题小结

    pycharm中TensorFlow调试常见问题小结

    本文主要介绍了在pycharm下调用tensorflow库时会出现的问题,在本文做个小结,也给自己留个笔记,感兴趣的可以了解一下
    2021-06-06
  • python在指定位置插入字符的实现

    python在指定位置插入字符的实现

    本文主要介绍了python在指定位置插入字符的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Python中隐藏的五种实用技巧分享

    Python中隐藏的五种实用技巧分享

    这篇文章主要和大家分享五个Python中隐藏的实用技巧,文中的示例代码讲解详细,对我们学习Python有一定的帮助,感兴趣的小伙伴可以学习一下
    2022-05-05
  • 如何利用python实现把视频转换成gif图形

    如何利用python实现把视频转换成gif图形

    将视频转换为 GIF 图形的重要性不言而喻,在信息快速传播和多种社交平台广泛应用的背景下,GIF 动画不仅为个人用户提供了一种轻松的表达方式,本文给大家介绍了如何利用python实现把视频转换成gif图形,需要的朋友可以参考下
    2024-10-10
  • Python全面分析系统的时域特性和频率域特性

    Python全面分析系统的时域特性和频率域特性

    今天小编就为大家分享一篇Python全面分析系统的时域特性和频率域特性,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python实现会员信息管理系统(List)

    python实现会员信息管理系统(List)

    这篇文章主要为大家详细介绍了python实现会员信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • python ftplib模块使用代码实例

    python ftplib模块使用代码实例

    这篇文章主要介绍了python ftplib模块使用代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论