Python关于时间的处理time\datetime\timedelta
Python时间处理datetime.timedelta()、time模块用法灵活
直接要求和:
用下面代码方便准确的获取昨天,上个小时,上个月。
import datetime
today = datetime.datetime.now().day
yesterday = (datetime.datetime.now() - datetime.timedelta(days=1)).day
hour = datetime.datetime.now().hour
last_hour = (datetime.datetime.now() - datetime.timedelta(minutes=60)).hour
month = datetime.datetime.now().replace(day=1).month
last_month = (datetime.datetime.now().replace(day=1) - datetime.timedelta(days=1)).month
python计算明天的日期:
from datetime import datetime
from datetime import timedelta
now = datetime.now()
aDay = timedelta(days=1)
now = now + aDay
print(now.strftime('%Y-%m-%d'))
python计算昨天时间:
from datetime import datetime
from datetime import timedelta
now = datetime.now()
aDay = timedelta(days=-1)
now = now + aDay
print(now.strftime('%Y-%m-%d'))
使用timedelta可以很方便的在日期上做天days,小时hour,分钟,秒,毫秒,微妙的时间计算,如果要
另外time模块也有很强灵活的功能
计算上个月的月份
import time
last_month = time.localtime()[1]-1 or 12 #减去几就是上几个月
print(last_month)
最后再看几个结合格式化的实例:
import datetime
import time
print(time.localtime())
last_month = time.localtime()[1]-(1%12) #用几%12就是上几个月
print(last_month) #最后等到月份
print(datetime.datetime.now().__format__('11111%y%m')) #格式化为11111yymm
print(datetime.datetime.now().strftime('11111%y%m')) #格式化为11111yymm
print(datetime.datetime.now().replace(day=1)) #当前日期时间把日期换成1号
print(datetime.datetime.now().replace(hour=13)) #当前日期时间把时钟换成13点
print( datetime.timedelta(days=1,hours=3)) #day=?,hours=?...
print((datetime.datetime.now().replace(day=1) - datetime.timedelta(days=1)).month)