2016-08-15 67 views
0

我在python中有一个日期时间范围,它将一堆日期添加到一个范围中,但是我不能为我的生活弄清楚如何从该列表中减去星期日。我知道如何分别计算营业日和周末,但我如何消除周日的JUST? 这里是我的公式:如何从python中的日期时间范围中减去星期一

days = 100 
i = 1 
daterange= [] 
while i < days: 
    yesterday = datetime.now() - timedelta(days=i) 
    daterange.append(yesterday.strftime('%m%d%y')) 
    i +=1 

print(daterange) 

对这个顽固问题的任何帮助表示赞赏:)谢谢

+0

在stackoverflow上提出问题。我试过谷歌,然后来到这里。我会很愚蠢,在黑暗中徘徊好几个小时而不是寻求帮助。 –

回答

2

使用datetime.weekday()排除周日。

from datetime import datetime, timedelta 

days = 100 
daterange = [] 

for i in range(1, 100): 
    yesterday = datetime.now() - timedelta(days=i) 
    if yesterday.weekday() != 6: 
     daterange.append(yesterday.strftime('%m%d%y')) 

print(*daterange, sep='\n') 

而且,我宁愿使用一个for循环,而不是这里while循环。

+0

@ PatrickO很高兴帮助:) –