You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python将CSV按起止日期分组转换为指定格式字典(Json)存入数据库

实现方案

直接用Pandas处理即可,内置的分组聚合能力可以完美匹配你的需求,无需手动写复杂的for循环判断逻辑,500行的小数据量完全没有性能压力。

如果环境中没有安装依赖,执行以下命令安装:

pip install pandas openpyxl

其中openpyxl是读取Excel文件的依赖,仅处理CSV可以不安装。

完整代码示例

import pandas as pd

# 1. 读取CSV/Excel文件
# 读Excel替换为 pd.read_excel("你的文件路径.xlsx")
df = pd.read_csv("你的数据文件路径.csv")

# 2. 按start_date、end_date分组,拼接Number为逗号分隔的字符串
grouped = df.groupby(
    ["start_date", "end_date"], 
    as_index=False
)["Number"].agg(lambda num_series: ",".join(num_series.astype(str)))

# 3. 生成要求格式的字典列表,直接循环处理即可
result_list = []
for _, row in grouped.iterrows():
    req_dict = {
        "request": [
            {"key": "AMI_LIST", "value": row["Number"]},
            {"key": "START_DATE", "value": row["start_date"]},
            {"key": "END_DATE", "value": row["end_date"]}
        ]
    }
    result_list.append(req_dict)

# 后续直接循环result_list写入数据库即可,示例:
# for item in result_list:
#     数据库写入逻辑(item)

补充说明

  • 你给出的示例输出中dict2的AMI_LIST值多写了一位7,代码实际生成的是和输入一致的777777777
  • 如果需要处理空值、Number格式校验等额外逻辑,只需要在分组聚合的lambda函数中补充对应处理即可,扩展非常方便

内容的提问来源于stack exchange,提问作者Shubham Srivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 16:06:04