首页 编程教程正文

输出某一年所有的周期数按指定格式输出 自定义输出多少周

piaodoo 编程教程 2020-02-22 22:08:49 942 0 python教程

本文来源吾爱破解论坛

[Python] 纯文本查看 复制代码

from datetime import datetime,timedelta
#copyright python36
def get_week_day(datestr):
    week_day_dict={0:-1,1:-2,2:-3,3:-4,4:-5,5:-6,6:0} #周日到周六为一周
    #week_day_dict={0:0,1:-1,2:-2,3:-3,4:-4,5:-5,6:-6} #周一到周日为一周
    day=datestr.weekday()
    return week_day_dict[day]

def week_all(ystr,wcount):
        firststr=get_week_day(datetime.strptime(ystr+'.01.01',"%Y.%m.%d"))
        publicstr=''
        for i in range(0,wcount) :
            if i==0:
                firststr=(datetime.strptime(ystr+'.01.01',"%Y.%m.%d")+timedelta(days=firststr)).strftime("%Y.%m.%d")
                publicstr=(datetime.strptime(firststr,"%Y.%m.%d")+timedelta(days=6)).strftime("%Y.%m.%d")
                print(firststr+'-'+publicstr)
            elif (i%2)==0:
                evenstr=(datetime.strptime(publicstr,"%Y.%m.%d")+timedelta(days=1)).strftime("%Y.%m.%d")
                publicstr=(datetime.strptime(evenstr,"%Y.%m.%d")+timedelta(days=6)).strftime("%Y.%m.%d")
                print(evenstr+'-'+publicstr)
            else:
                oddstr=(datetime.strptime(publicstr,"%Y.%m.%d")+timedelta(days=1)).strftime("%Y.%m.%d")
                publicstr=(datetime.strptime(oddstr,"%Y.%m.%d")+timedelta(days=6)).strftime("%Y.%m.%d")
                print(oddstr+'-'+publicstr)
#传入年份,输入要生成周期数
week_all('2019',10)

运行效果:
2018.12.30-2019.01.05
2019.01.06-2019.01.12
2019.01.13-2019.01.19
2019.01.20-2019.01.26
2019.01.27-2019.02.02
2019.02.03-2019.02.09
2019.02.10-2019.02.16
2019.02.17-2019.02.23
2019.02.24-2019.03.02
2019.03.03-2019.03.09

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/7681.html

搜索