Python datetime中strptime用法详解

栗子
栗子
发布时间:2026-10-12 | 2人浏览过
原创

本文详细解析Python中datetime模块的strptime方法,用于将字符串转换为datetime对象。通过具体示例展示如何解析日期时间字符串,并计算与当前时间的差值,包括天、小时、分钟和秒。同时介绍了strftime方法,用于将时间对象格式化为字符串。

Python datetime中strptime用法详解

在Python中,datetime模块提供了处理日期和时间的类。其中,strptime方法用于将字符串转换为datetime对象,而strftime方法则用于将时间对象格式化为字符串。

常用格式代码

  • %Y表示四位数的年份(000-9999)
  • %y表示两位数的年份(00-99)
  • %m表示月份(01-12)
  • %d表示月内的一天(0-31)
  • %H表示24小时制小时数(0-23)
  • %I表示12小时制小时数(01-12)
  • %M表示分钟数(00-59)
  • %S表示秒(00-59)
  • %a表示本地简化星期名称
  • %A表示本地完整星期名称
  • %b表示本地简化的月份名称
  • %B表示本地完整的月份名称
  • %c表示本地日期和时间表示
  • %j表示年内的一天(001-366)
  • %p表示本地A.M.或P.M.等价符
  • %U表示一年中的星期数,周日为开始
  • %w表示星期(0-6),周日为开始
  • %W表示一年中的星期数,周一为开始
  • %x表示本地相应的日期表示
  • %X表示本地相应的时间表示
  • %Z表示当前时区的名称

语法示例

以下是strptime和strftime的基本语法示例:

datetime.strptime(str, '%Y-%m-%d')
datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")

实际应用示例

下面是一个具体的应用示例,展示了如何使用strptime解析日期时间字符串,并计算与当前时间的差值:

import datetime

day20 = datetime.datetime.strptime('2020-01-01 0:0:0', '%Y-%m-%d %H:%M:%S')
nowdate = datetime.datetime.today()
dela = day20 - nowdate
day = dela.days
hour = int(dela.seconds / 60 / 60)
minute = int((dela.seconds - hour * 60 * 60) / 60)
second = dela.seconds - hour * 60 * 60 - minute * 60
print('到2020年元旦还有:' + str(day) + '天' + str(hour) + '小时' + str(minute) + '分' + str(second) + '秒')

该示例首先使用strptime将字符串'2020-01-01 0:0:0'转换为datetime对象,然后获取当前时间,计算两者之间的差值,并提取天、小时、分钟和秒。

总结

通过本文的介绍,相信读者已经对Python中datetime模块的strptime方法有了更深入的了解。在实际开发中,灵活运用这些方法可以大大提高日期时间处理的效率。

以上就是Python datetime中strptime用法详解的详细内容,更多关于Python datetime的资料请关注本站其它相关文章!

相关标签:

本站声明

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

Python 相关产品和应用

全部下载

专题列表