一句话快速进行python时间运算

最快速的方法求得当前时间、日期,以及进行相关运算,拒绝晕菜。

1 python快速求值当前时间

当前的天数、当前的时间

1
2
3
4
5
6
7
8
In [1]: from datetime import datetime, timedelta, date
In [2]: (datetime.now()).strftime('%Y%m%d')
Out[2]: '20161009'
In [3]: (datetime.now()).strftime('%Y/%m/%d %H:%M:%S')
Out[3]: '2016/10/09 16:57:12'

同上,当前的周数、月份、上下午等都可以通过后面的格式化字符求出。例如,

%a代表英文周几,%b代表月份,%p代表AM/PM等,更多的参考下图:

2 python快速时间运算

python周数运算、天数运算、小时运算、秒数运算、毫秒运算、微秒运算

1
2
3
4
5
In [5]: (datetime.now()-timedelta(days=1)).strftime('%Y%m%d') # 1天前,N天前
Out[5]: '20161008'
In [6]: (datetime.now()-timedelta(hours=1)).strftime('%Y/%m/%d %H:%M:%S') # 1小时前,n小时前
Out[6]: '2016/10/09 16:00:02'

同上,weeks表示周为单位,second表示秒为单位,milliseconds表示毫秒为单位, microseconds微秒为单位。

其实就是给 timedelta() 这个类传入的参数变一下就可以了:

可传入的参数有 timedelta(weeks, days, hours, second, milliseconds, microseconds) 每个参数都是可选参数,默认值为0,参数值必须是这些(整数,浮点数,正数,负数).通过给相应参数赋值求得当前时间为基准,N天前/后的时间。