python – 循环通过日期,除了周末

python – 循环通过日期,除了周末,第1张

概述所以我有一个脚本,具有日期参数不同的功能,我希望它循环01-01-2012到06-09-2012不包括周末.我试图找出一种方法,我可以使用时间增量,因为我的脚本输出文件与文件名称中使用的日期,例如: items = (functions.getItems(item,date) print items test = sum(abs(l[-1]) for l in items) 所以我有一个脚本,具有日期参数不同的功能,我希望它循环01-01-2012到06-09-2012不包括周末.我试图找出一种方法,我可以使用时间增量,因为我的脚本输出文件与文件名称中使用的日期,例如:
items = (functions.getItems(item,date)    print items    test = sum(abs(l[-1]) for l in items)    total = open('total' +str(datetime.today- datetime.timedelta(1)),'a')

我想要timedelta(1)循环遍历每个日期,以便输出文件的格式为total2012-01-01的第一天,循环,直到创建文件total2012-06-09. Item的date参数也是MM-DD-YYYY的格式

我以为我可以这样做:

sd = 01-01-2012ed = 06-09-2012delta = datetime.timedelta(days=1)diff = 0while sd != ed    # do functions     # (have output files (datetime.today - datetime.delta(diff))    diff +=1    sd+=delta

所以本质上我只是想弄清楚如何循环使功能从01-01-2012开始,结束于06-10-2012,不包括周末.我无法弄清楚如何排除周末,以及如何让它按正确的顺序循环

谢谢

@R_404_6120@ 使用 datetime.weekday()方法.它返回值在零到六之间,与平日相关.星期六值为5,星期日值为6;因此,如果您在出现这些值时跳过 *** 作,则可以跳过周末:
start = datetime(2012,1,1)end = datetime(2012,10,6)delta = timedelta(days=1)d = startdiff = 0weekend = set([5,6])while d <= end:    if d.weekday() not in weekend:        diff += 1    d += delta
总结

以上是内存溢出为你收集整理的python – 循环通过日期,除了周末全部内容,希望文章能够帮你解决python – 循环通过日期,除了周末所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1206971.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存