python的datetime模块主要用来处理时间,里面包含很多类,包括timedelay,date,time,datetime等
开发中经常会用到模块里面的datetime类,这是一个表示日期时间的类。
1.创建一个新的datetime对象
In [1]: from datetime import datetime In [2]: my_time = datetime(2009,2,13) In [3]: my_time Out[3]: datetime.datetime(2009, 2, 13, 0, 0)
datetime对象接受的参数形式 datetime(year, month, day, hour=0, minute=0, second=0) ,创建一个新的datetime对象时,必须传参数年月日
2.datetime对象的常用方法
datetime.today() 返回当前的时间
datetime.now(tz=None) 返回当前的时间
datatime.strptime(date_string, format) 将特定format形式的时间字符串转换为datetime对象
datetime.strftime(fortmat) 将datetime对象转换为format形式的字符串
比如:
In [13]: datetime.now() # 返回当前时间的datetime对象 Out[13]: datetime.datetime(2018, 8, 24, 13, 4, 19, 140295) In [14]: datetime.today() # 返回当前时间的datetime对象 Out[14]: datetime.datetime(2018, 8, 24, 13, 5, 8, 107883) # 将 '2018-2-16' 这种形式的字符串转换为datetime对象 In [15]: my_time = '2018-2-16' In [16]: datetime.strptime(my_time,'%Y-%m-%d') Out[16]: datetime.datetime(2018, 2, 16, 0, 0) # 将 datetime.datetime(2018, 2, 16, 0, 0)对象转换为字符串 '2-16-2018' In [17]: my_datetime = datetime.strptime(my_time, '%Y-%m-%d') In [18]: my_datetime.strftime('%m-%d-%Y') Out[18]: '02-16-2018'
有关format的说明,format使用%和字母组成,表示特定的意义
Y:表示年,如 2018
m:表示月份 ,如 02
d:表示天数,如 06
H:表示小时,如 11
M:表示分钟,如 34
S:表示秒数,如 45
3.datetime对象的属性
datetime.year
datetime.month
datetime.day
datetime.hour
datetime.minute
In [19]: now_datetime = datetime.now() In [20]: now_datetime Out[20]: datetime.datetime(2018, 8, 24, 13, 21, 48, 178007) In [21]: now_datetime.year Out[21]: 2018 In [22]: now_datetime.month Out[22]: 8 In [23]: now_datetime.day Out[23]: 24 In [24]: now_datetime.hour Out[24]: 13 In [25]: now_datetime.minute Out[25]: 21 In [26]: now_datetime.second Out[26]: 48