python中datetime模块中datetime对象的使用方法

时间:2023-12-05 13:40:02

本文只讲述datetime模块中datetime对象的一些常用的方法,如果读者需要更多datetime模块的信息,请查阅此文档

datetime模块的对象有如下:

  • timedelta
  • date
  • datetime
  • time
  • tzinfo

还包含以下两个常量:

  • datetime.MINYEAR (它返回的是1)
  • datetime.MAXYEAR(它返回的是9999)

datetime对象

它的构造方法:

class datetime.datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]])

year, month 和 day 参数是必须的,其他参数可选, 参数tzinfo表示可选的时区信息,一般我们也用不到。参数值的范围如下:

  • MINYEAR <= year <= MAXYEAR
  • 1 <= month <= 12
  • 1 <= day <= number of days in the given month and year
  • 0 <= hour < 24
  • 0 <= minute < 60
  • 0 <= second < 60
  • 0 <= microsecond < 1000000

我们平常能用到的也就是年,月,日,时,分,秒,其他参数可以不用管。下面通过例子认识下datetime对象。

from datetime import datetime as dt
t=dt(2017,6,1,hour=13,minute=17,second=30)
print(type(t))
print(t) 输出:
<type 'datetime.datetime'>
2017-06-01 13:17:30

如果我们只传参数year, month, day,那么时间会默认变成00:00:00,看下面的代码:

from datetime import datetime as dt
t=dt(2017,6,1)
print(t) 输出:2017-06-01 00:00:00

下面我们看下datetime对象的几个方法:

datetime.today() 返回本地当前的时间

from datetime import datetime as dt
print(dt.today()) 输出:2017-06-18 13:21:16.201000

datetime.now([tz]) 返回本地当前的日期和时间。如果可选的参数 tz 为 None 或者没有指定,就如同today()

from datetime import datetime as dt
print(dt.now()) 输出:2017-06-18 13:23:33.536000

datetime对象还有两个属性:min和max

from datetime import datetime as dt
min_time=dt.min
max_time=dt.max
print(min_time)
print(max_time) 输出:
0001-01-01 00:00:00
9999-12-31 23:59:59.999999