有没有办法使用 Python 获取上周五的日期并将其存储在变量中,而不管程序在一周中的哪一天运行?
也就是说,如果我在 2021 年 6 月 19 日星期一或 2021 年 6 月 22 日星期四运行程序,它总是返回上一个星期五作为日期变量:2021-07-16。
答案 0 :(得分:0)
为了将星期几作为整数,我们使用 datetime.datetime.today().weekday()
并从我们使用 datetime.today() - timedelta(days=days_to_subtract)
的日期时间中减去天数,现在我们可以制作一个字典,将星期几与天数减去并使用该字典进行减法:
from datetime import datetime, timedelta
d = {0:3,1:4,2:5,3:6,4:0,5:1,6:2}
lastfriday = datetime.today()-timedelta(days=d[datetime.today().weekday()])
答案 1 :(得分:0)
您的问题类似于this one 这是一个起点:
import datetime
def get_last_friday():
current_time = datetime.datetime.now()
last_friday = (current_time.date()
- datetime.timedelta(days=current_time.weekday())
+ datetime.timedelta(days=4, weeks=-1))
return last_friday