C# 如何按指定天数分组日期范围 示例按7天为块拆分日期列表
日期按7天分组的实现方案
下面提供不同常用场景下的实现方法:
Python代码实现
如果是用代码处理,直接对有序的日期列表按固定步长切分即可:
# 原始日期列表 date_list = [ "2021/09/01", "2021/09/02", "2021/09/03", "2021/09/04", "2021/09/05", "2021/09/06", "2021/09/07", "2021/09/08", "2021/09/09", "2021/09/10", "2021/09/11", "2021/09/12", "2021/09/13", "2021/09/14", "2021/09/15", "2021/09/16", "2021/09/17", "2021/09/18", "2021/09/19", "2021/09/20", "2021/09/21", "2021/09/22", "2021/09/23", "2021/09/24", "2021/09/25", "2021/09/26", "2021/09/27", "2021/09/28", "2021/09/29" ] group_size = 7 # 按步长7切分列表 groups = [date_list[i:i+group_size] for i in range(0, len(date_list), group_size)] # 打印输出符合要求的格式 for g in groups: print("\n".join(g)) print()
如果日期不是连续有序的,需要按自然周分组,可以先将日期转为datetime类型,按周数进行分组即可。
Excel 操作实现
如果日期存储在Excel表格的A列(从A1开始逐行存放):
- 相邻B列的B1单元格输入公式:
=INT((ROW(A1)-1)/7)+1 - 下拉填充B列所有行,B列会自动生成每7行相同的分组编号
- 按B列的值对数据进行筛选或分组即可得到对应结果。
Shell 命令实现(纯文本日期文件)
如果日期逐行存放在纯文本文件dates.txt中,直接执行awk命令即可完成分组:
awk 'NR%7==1{print ""}1' dates.txt
运行后会自动每7行后插入一个空行,符合你要的输出格式。
内容的提问来源于stack exchange,提问作者Mikhail Kostiuchenko
相关产品推荐
相关产品推荐

