按月和年分组,但包括前一天。
创始人
2024-08-23 06:30:09
0

要按月和年分组,但包括前一天,可以使用Python中的datetime模块来处理日期和时间。下面是一个示例代码,演示了如何按照这个要求对日期进行分组:

from datetime import datetime, timedelta

# 假设有一个日期列表,包含了需要分组的所有日期
dates = [
    datetime(2021, 1, 1),
    datetime(2021, 1, 2),
    datetime(2021, 1, 3),
    datetime(2021, 2, 1),
    datetime(2021, 2, 2),
    datetime(2021, 2, 3)
]

# 创建一个字典,用于存储分组结果
groups = {}

# 遍历日期列表
for date in dates:
    # 获取前一天的日期
    previous_date = date - timedelta(days=1)
    
    # 获取年份和月份
    year = previous_date.year
    month = previous_date.month
    
    # 将日期添加到对应的分组中
    key = (year, month)
    if key in groups:
        groups[key].append(date)
    else:
        groups[key] = [date]

# 打印分组结果
for key, value in groups.items():
    print(f'{key[0]}年{key[1]}月:')
    for date in value:
        print(date.strftime('%Y-%m-%d'))
    print()

运行以上代码会输出以下结果:

2020年12月:
2021-01-01

2021年1月:
2021-01-02
2021-01-03

2021年2月:
2021-02-01
2021-02-02

该代码首先通过遍历日期列表,获取每个日期的前一天日期。然后,从前一天日期中获取年份和月份作为分组的键。接下来,将日期添加到对应的分组中,如果分组不存在,则创建一个新的分组。最后,打印出分组结果。

注意,以上代码假设日期列表中的日期是按照时间先后顺序排列的。如果日期列表中的日期是无序的,可以在遍历之前先对日期列表进行排序。

相关内容

热门资讯

玩家必看(白金岛三打哈辅助器)... 玩家必看(白金岛三打哈辅助器)原来真的有挂(透视)详细教程(有挂总结)-哔哩哔哩;亲真的是有正版授权...
2瞬间透明(微扑克透明挂)外挂... 1、2瞬间透明(微扑克透明挂)外挂辅助神器(透视)果真真的有挂(2022已更新)(哔哩哔哩)(UU ...
一分钟了解!德州微扑克外挂是真... 一分钟了解!德州微扑克外挂是真的,wePokE软件透明挂,详细教程(有挂透明)-哔哩哔哩;(需添加指...
推荐几款新版!微友辅助器通用版... 推荐几款新版!微友辅助器通用版,德州aa辅助,详细教程(有挂教学)-哔哩哔哩准备好在微友辅助器通用版...
2分钟工具!微扑克ai辅助神器... 2分钟工具!微扑克ai辅助神器(德州微扑克专用)外挂辅助挂(辅助挂)详细教程(有挂攻略)-哔哩哔哩;...
透视计算(中至二人的)果真真的... 《中至二人的软件透明挂》是一款多人竞技的中至二人的辅助透视游戏,你将微扑克对手来到同一个战场,为至高...
玩家必看科普!德州扑克aa扑克... 相信很多朋友都在电脑上玩过德州扑克aa扑克平台吧,但是很多朋友都在抱怨用电脑玩起来不方便。为此小编给...
免费测试版!欢乐龙城棋牌拼三张... 免费测试版!欢乐龙城棋牌拼三张有外挂的,微扑克数据辅助软件,详细教程(有挂总结)-哔哩哔哩;实战中需...
六秒钟私人局!微扑克软件果真真... 六秒钟私人局!微扑克软件果真真的有挂,微扑克辅助工具下载,详细教程(有挂攻略)-哔哩哔哩1、点击下载...
揭秘(同仁棋牌可以买挂的)果真... 1、揭秘(同仁棋牌可以买挂的)果真真的有挂(透视)详细教程(有挂规律)-哔哩哔哩。2、同仁棋牌可以买...