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

Python合并字典生成指定结构JSON 处理HTML表单返回JSON数据

现有矩阵结构的实现方法

你已经完成了表单JSON到8行3列矩阵的转换,直接按列遍历矩阵绑定字段即可生成目标结构,Python实现参考如下:

  1. 先定义和矩阵行顺序一一对应的固定字段列表
  2. 遍历3列数据,每列生成一个对象,将字段和对应行的列值绑定
  3. 把生成的3个对象存入数组后导出为JSON文件
import json

# 字段顺序和矩阵行顺序严格对应
FIELD_ORDER = ["Header", "Line_01", "Line_02", "Line_03", "Line_04", "Line_05", "Line_06", "Line_07"]
# 替换为你实际生成的8行3列二维矩阵
form_matrix = [
    ["头部值1", "头部值2", "头部值3"],
    ["第一行值1", "第一行值2", "第一行值3"],
    # 剩余Line_02到Line_07对应的行数据...
]

target_arr = []
# 遍历3列,每列对应一个目标对象
for col_index in range(3):
    current_item = {}
    for row_index, field_name in enumerate(FIELD_ORDER):
        current_item[field_name] = form_matrix[row_index][col_index]
    target_arr.append(current_item)

# 导出为JSON文件
with open("form_output.json", "w", encoding="utf-8") as f:
    json.dump(target_arr, f, ensure_ascii=False, indent=2)

注意:必须保证矩阵行的顺序和FIELD_ORDER的字段顺序完全一致,否则会出现字段和值不匹配的问题

更优处理方案

可以跳过二维矩阵的中间转换步骤,直接从原始表单JSON生成目标结构,适配性更高、出错概率更低:

  • 减少中间转换的内存开销,数据量大时性能优势明显
  • 字段映射关系更直观,避免行列顺序错配的隐性bug
  • 后续字段调整只需修改字段列表,维护成本更低

如果原始表单的字段命名按分组带后缀(比如Header_1、Line_01_2),参考实现如下:

import json

FIELD_ORDER = ["Header", "Line_01", "Line_02", "Line_03", "Line_04", "Line_05", "Line_06", "Line_07"]
# 替换为你从HTML表单读取的原始JSON数据
raw_form_data = {
    "Header_1": "头部1", "Line_01_1": "行1-1", "Line_07_1": "行7-1",
    "Header_2": "头部2", "Line_01_2": "行1-2", "Line_07_2": "行7-2",
    "Header_3": "头部3", "Line_01_3": "行1-3", "Line_07_3": "行7-3",
}

target_arr = []
for group_num in range(1, 4):
    current_item = {field: raw_form_data[f"{field}_{group_num}"] for field in FIELD_ORDER}
    target_arr.append(current_item)

with open("form_output.json", "w", encoding="utf-8") as f:
    json.dump(target_arr, f, ensure_ascii=False, indent=2)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.19 14:54:06