小编Tho*_*eks的帖子

第一年的天数不准确

我编写了以下代码,以便在年末的某一天开始该年的支付期。出于某种原因,它告诉我 12 月 22 日(第一年)是星期六。在线日历告诉我那是在星期四。

from datetime import datetime, timedelta

def pp_firstday(year):
    print(type(year))
    firstday = datetime(1,12,22,0,0,0)
    yr = 2
    print(yr, " ", firstday.strftime("%b/%d/%Y  %a"))
    yr = 3
    while int(firstday.strftime("%Y")) != year-1:
        firstday += timedelta(weeks=52)
        if int(firstday.strftime("%m")) <= 12 and int(firstday.strftime("%d")) <= 12:
            firstday += timedelta(weeks=2)
            print("27: ",firstday.strftime("%b/%d/%Y  %a"))
        print(yr, " ",firstday.strftime("%b/%d/%Y  %a"))
        yr += 1
    return firstday

year = int(input("Year >>>")) result=pp_firstday(year) print(result.strftime("%b/%d/%Y  %a"))
Run Code Online (Sandbox Code Playgroud)

问题是,当你运行它时,输出显示: 2 Dec/22/0001 Sat Python 认为 12 月 22 日,第 1 年是星期六。到 2019 年时,输出显示:2020 Dec/21/2019 Sat,因此问题已得到纠正。是什么赋予了?

python datetime

2
推荐指数
1
解决办法
54
查看次数

标签 统计

datetime ×1

python ×1