我是 python 的新手,我有以下用例:
请引用以下日历:
今天的日期是 2018-09-12。 我想在其他一些条件下对前一天进行一些计算。 我使用以下代码检索了昨天的日期和日期:
yesterday_date = datetime.strftime(datetime.now() - timedelta(1), '%Y-%m-%d')
yesterday_day = datetime.strftime(datetime.now() - timedelta(1), '%A')
现在我想在前一周的同一天进行一些计算。即:我想获得前一周同一天的日期 ( 周二 )。所以基本上我想连续迭代前一周的日期作为我的昨天日期的同一天并执行一些计算。
Yesterday Date : 2018-09-11
Yesterday Day : Tuesday
所以我的输出应该是这样的:
2018-09-04
2018-08-28
2018-08-21
2018-08-14
2018-08-07
等等。
我怎样才能做到这一点?
最佳答案
假设您想要打印昨天日期的最后 5 个实例:
yesterday = datetime.now() - timedelta(days=1)
for i in range(0, 5):
prev_date = yesterday - timedelta(days=i*7)
print(datetime.strftime(prev_date, '%Y-%m-%d'))
或者如果您想要一个日期时间对象列表:
yesterday = datetime.now() - timedelta(days=1)
prev_dates = [yesterday - timedelta(days=i*7) for i in range(0, 5)]
关于Python - 遍历前一周的同一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52295150/