openpyxl写入excel,怎么根据第二列数据的个数合并第一列并写入标题

大一小白,自学遇到一个问题。

img
如图的表格,设定的是第二列有几个数据的个数是从微信小程序前端传过来的,那么怎么根据第二列的个数来合并第一列呢,并且自动写入从前端传过来的例如阳台,橱柜之类的标题。
求解答,不升ganxie。

主要是看你的数据源格式是什么样子吧,我给一个 data 格式做参考:

from openpyxl import load_workbook

data = [
    {
        "title": "橱柜",
        "items": [{"name": "地柜"}, {"name": "吊柜"}, {"name": "包管"}, {"name": "台面"}]
    },
    {
        "title": "阳台",
        "items": [{"name": "阳台-1"}, {"name": "阳台-2"}, {"name": "阳台-3"}]
    }
]

wb = load_workbook("1.xlsx")
ws = wb.active
index = 1
for d in data:
    title = d["title"]
    length = len(d["items"])
    ws[f"A{index}"] = title
    ws.merge_cells(f"A{index}:A{index + length - 1}")
    for item in d["items"]:
        ws[f"B{index}"] = item["name"]
        index += 1
wb.save("1.xlsx")