Skip to main content
 首页 » 编程设计

Python之遍历前一周的同一天

2025年05月04日23bjzhanghao

我是 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)]