如何根据开始和结束获取for循环中的日期列表?

剖腹产

我想使用 for 循环获取开始日期和结束日期之间范围的唯一 yyyy-mm-01 列表。这是我的代码:

import datetime
from datetime import timedelta, date

start=date(2017,4,1)
end=(datetime.date.today().replace(day=1)) - datetime.timedelta(days=1) #last completed month

def daterange(start, end):
    for n in range(int((end - start).days)):
        yield start + timedelta(n)

for single_date in daterange(start, end):
    myset = str(single_date.strftime("%Y-%m-01"))
    print(myset)

The issue is that my result looks like this:
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-04-01
2017-05-01

我尝试添加 set() 但它仍然显示冗余日期。我该如何解决?

莫比乌斯
dates = set()
for single_date in daterange(start, end):
    dates.add(single_date.strftime("%Y-%m-01"))

print(sorted(list(dates)))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

循环以根据开始日期和结束日期生成日期列表

如何在MySQL中根据开始日期和结束日期获取运行总计

如何根据开始日期和编号的选择获取自动结束日期。旅行天数

获取带有开始日期和结束日期的冲刺列表

如何根据开始和结束日期时间过滤包含抖动中的时间戳的 Firebase 对象列表?

如何根据开始和结束元素从列表创建子列表?

如何获取当前季度的开始日期和结束日期?

如何获取开始日期和结束日期之间的月数

Sql 如何从 5 周开始日期和结束日期获取

如何从MYSQL中的日期列表中获取开始年份和结束年份

开始日期和结束日期的 Sas 循环

如何在PostgreSQL中编写函数以根据传递给月份的名称获取月份的开始日期和结束日期

如何开始和结束日期

获取开始日期和结束日期

根据开始日期和cakephp中软件包数量的下拉列表,计算结束日期

如何生成一个包含每27天循环一次的开始和结束日期列表的数组?

批处理文件在循环中获取开始和结束字符

如何根据日期在URL中传递开始日期和结束日期?

如何在SQL中从开始日期,开始时间和完成时间获取结束日期

合并开始日期和结束日期循环日期

如何根据一天中的任务完成情况从给定的日期列中获取开始日期和结束日期(oracle)

如何从 C# 中的另一个开始日期和结束日期按天间隔获取所有可能的期间(带有开始日期和结束日期)的列表

获取开始日期和结束日期python之间的列表元素

如何从日期范围(开始日期和结束日期)生成每周列表?

如何在 Rails 日期字段下拉列表中设置开始日期和结束日期选项?

如何删除指定开始日期和结束日期期间之外的列表的日期时间元素?

Google 表格 - 如何从开始日期和结束日期提取新列中的日期列表

如何在SSIS中配置一个foreach循环容器以获取定义的开始日期和结束日期并在其间的每个日期运行?

如何-根据会计开始日期和结束日期选择其他行