美文网首页
Python datetime一些使用方法

Python datetime一些使用方法

作者: 京樂春水 | 来源:发表于2020-02-29 13:41 被阅读0次

使用datetime类,需要先import自带的datetime库

from datetime import datetime

最近在编写小程序中,经常需要生成当天的日期字符串,使用方法:

In [5]: datetime.today()
Out[5]: datetime.datetime(2020, 2, 29, 13, 35, 25, 378618)

或者

In [6]: datetime.now()
Out[6]: datetime.datetime(2020, 2, 29, 13, 36, 9, 692100)

datetime类型也可以进行"+/-"操作:

In [6]: from datetime import timedelta

In [7]: from datetime import datetime

In [8]: datetime.now() - timedelta(days=1)
Out[8]: datetime.datetime(2020, 2, 28, 13, 54, 28, 313980)

In [9]: datetime.now() + timedelta(days=1)
Out[9]: datetime.datetime(2020, 3, 1, 13, 54, 36, 882067)

这样得到的是datetime类型,需要将其转换为string类型,需要使用datetime类型的strftime方法:

In [9]: datetime.today().strftime('%Y%m%d')
Out[9]: '20200229'

也可以将一些不符合自己规则的字符串将其格式化,可以使用datetime类型的strptime方法:

In [1]: a="Wed, 18 Mar 2020 17:38:16 -0700"

In [2]: import datetime

In [3]: datetime.datetime.strptime(a, '%a, %d %b %Y %H:%M:%S %z')

这样就得到了一个datetime类型

其中,strftime()方法中常用的输出格式为:

  • %y 两位数的年份表示(00-99)
  • %Y 四位数的年份表示(000-9999)
  • %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 一年中的星期数(00-53)星期天为星期的开始
  • %w 星期(0-6),星期天为星期的开始
  • %W 一年中的星期数(00-53)星期一为星期的开始
  • %x 本地相应的日期表示
  • %X 本地相应的时间表示
  • %Z 当前时区的名称
  • %% %号本身

另外,time模块也可以实现相应的功能:

In [22]: import time

In [23]: time.strftime('%Y%m%d %H:%M:%S')
Out[23]: '20200229 13:49:52'

参考:https://www.runoob.com/python/att-time-strftime.html

相关文章

网友评论

      本文标题:Python datetime一些使用方法

      本文链接:https://www.haomeiwen.com/subject/kffbfhtx.html