所有日期、时间的api都在datetime模块内。
1. 日期输出格式化 string => datetime
import datetime
t_str = '2015-04-07 19:11:21'
t_date = datetime.datetime.strptime(t_str, '%Y-%m-%d %H:%M:%S')
print t_date
输出:2015-04-07 19:11:21
strptime是datetime类的静态方法。
2. 日期输出格式化 datetime => string
all = t_date.strftime('%Y-%m-%d %H:%M:%S')
year = t_date.strftime('%Y')
month = t_date.strftime('%m')
day = t_date.strftime('%d')
hour = t_date.strftime('%H')
minute = t_date.strftime('%M')
print all,year,month,day,hour,minute
输出:
2015-04-07 19:11:21 2015 04 07 19 11
strftime是datetime类的实例方法。
最后抛一个问题进行解决:如何判断某个时刻,是该天的第几个5分钟或者该小时的第几个5分钟
接着上面例子继续说明:还可以这样将时间格式化,直接提取和使用年月日分钟秒
t_date.hour
t_date.minute
t_date.hour和 t_date.strftime('%H') 有什么区别?前者是int,后者是string
解决这个问题可以如下:
某小时的第几个5分钟:
order_hour_5 = t_date.minute/5+1
order_day_5 = t_date.minute/5+1 + t_date.hour*12
print order_hour_5,order_day_5
输出:3 231
2015-04-07 19:11:21 是19点的第3个5分钟,是4月7日的第231个5分钟