Python查找年份中的剩余天数和年份中的天数

我正在尝试使用以下内容创建数组,请参见此示例以了解我的目标。

目前,我有这段代码可以计算两个日期之间每个月的天数:

a = datetime(2019,11,1)
b = datetime(2023,12,31)
days = [calendar.monthrange(dt_i.year,dt_i.month)[1] for dt_i in rrule.rrule(rrule.MONTHLY,dtstart=a,until=b)]

输出

[30,31,29,30,28,31]

目标:

我试图完成的事情与之相似,但是已经很多年了

a = datetime(2019,31)
##Unsure of code going here##

输出

[60,366,365,365]

目标是找到当年的剩余天数,然后是出年的天数

任何帮助表示感谢,谢谢!

yz1987cn 回答:Python查找年份中的剩余天数和年份中的天数

from datetime import datetime

a = datetime(2019,11,1)
b = datetime(2023,12,31)

# end of a's year
next_a = datetime(2019,31)

# previous b's end year
prev_b = datetime(2022,31)

# get all full year difference in days
difs_in_years = [(datetime(x + 1,31) - datetime(x,31)).days for x in range(next_a.year,prev_b.year)]

# get a's diff in days from its end of the year
difs_in_years.insert(0,(next_a - a).days)

# get b's diff in days from its beggining of the year
difs_in_years.insert(len(difs_in_years),(b - prev_b).days)

print(difs_in_years)
,

ranisfisch击败了我。

我要指出How to Calculate the number of days in the year(s) between 2 dates in python,这基本上是相同的问题。另外,我将指出,您的“每月天数”示例仅在开始日期为每月的第一天时有效。

本文链接:https://www.f2er.com/3093775.html

大家都在问