1. 程式人生 > >python datetime 常用的幾種處理日期的方式

python datetime 常用的幾種處理日期的方式

import datetime
#本週第一天和最後一天
date1 = datetime.datetime.now()
this_week_start_dt = str(date1-datetime.timedelta(days=date1.weekday())).split()[0]
this_week_end_dt = str(date1+datetime.timedelta(days=6-date1.weekday())).split()[0]
print this_week_start_dt,this_week_end_dt



#上個星期一和星期天的日期
last_week_start_dt = date1-datetime.timedelta
(days=date1.weekday()+7) last_week_end_dt = date1-datetime.timedelta(days=date1.weekday()+1) #本月一號和最後一天的日期 y=date1.year m = date1.month month_start_dt = datetime.date(y,m,1) if m == 12: month_end_dt = datetime.date(y+1,1,1) - datetime.timedelta(days=1) print month_end_dt else: month_end_dt = datetime.date
(y,m+1,1) - datetime.timedelta(days=1) print month_end_dt #上個月的第一天和最後一天 if m==1: #如果是1月 start_date=datetime.date(y-1,12,1) else: start_date=datetime.date(y,m-1,1) end_date=datetime.date(y,m,1) - datetime.timedelta(days=1) #這個季度的第一天和最後一天的日期 y=date1.year month = date1.month
if month in (1,2,3): quarter_start_dt = datetime.date(y,1,1) quarter_end_dt = datetime.date(y,4,1) - datetime.timedelta(days=1) elif month in (4,5,6): quarter_start_dt = datetime.date(y,4,1) quarter_end_dt = datetime.date(y,7,1) - datetime.timedelta(days=1) elif month in (7,8,9): quarter_start_dt = datetime.date(y,7,1) quarter_end_dt = datetime.date(y,10,1) - datetime.timedelta(days=1) else: quarter_start_dt = datetime.date(y,10,1) quarter_end_dt = datetime.date(y+1,1,1) - datetime.timedelta(days=1) #本季度天數 及 本季度剩餘的天數 # quarter_days = (quarter_end_dt - quarter_start_dt).days + 1 # quarter_rem = (quarter_end_dt - date1).days

本篇文章如對您有用請點選關注哦~,謝謝!