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