1、时间对象转字符串
date = datetime.datetime.strptime('2021-12-31', '%Y-%m-%d') #字符串转时间对象
_u = datetime.timedelta(days=1) #获取一天的时间对象
get_date = date - _u #时间对象也可以相加减
s_date = str(date) #时间对象转字符串 --方式1
ss_date = get_date.strftime('%Y-%m-%d') #字符串对象格式化转字符串
2、字符串转时间对象
date = datetime.datetime.strptime('2021-12-31', '%Y-%m-%d')
3、获取一年时间按周进行划分
#计算一年时间内的所有周的具体时间段
def allweeks(year=2015):
'''计算一年内所有周的具体日期,从1月1号开始,12.31号结束
输出如{1: ['20190101','20190106'],...} 只有六天
'''
start_date=datetime.datetime.strptime(str(year)+'-01-01','%Y-%m-%d')
end_date=datetime.datetime.strptime(str(year)+'-12-31','%Y-%m-%d')
_u=datetime.timedelta(days=1)
n=0
week_date={}
while 1:
_time=start_date+n*_u
w=str(int(_time.strftime('%W'))+1)
week_date.setdefault(w,[]).append(_time.strftime('%Y-%m-%d'))
n=n+1
if _time==end_date:
break
week_date_start_end={}
for i in week_date:
week_date_start_end[i]=[week_date[i][0],week_date[i][-1]]
return week_date
4、其他小技巧
#获取今天是第几周
week_time = datetime.datetime.now().weekday()+1