Yaql表达式。如何将两个列表转换为json对象

2024-10-02 04:34:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用下面的yaql表达式从两个列表vn1”、“vn2”、“vn3”]和[6,4,5]形成json对象

yaql> dict(data=>dict(["name","id"].zip(["vn1","vn2","vn3"],[6,4,5])))
{
    "data": {
        "name": "vn1",
        "id": "vn2"
    }
}

我想要下面的输出

{ "data": [ { "name": "vn1", "id": 6 }, { "name": "vn2", "id": 4 }, { "name": "vn3", "id": 5 } ] }


Tags: 对象nameidjson列表data表达式zip
1条回答
网友
1楼 · 发布于 2024-10-02 04:34:27

json对象类似于列表字典:

# dictionary of empty list
json_dict = { 'data': [] }
label = ['name', 'id']
v = ["vn1","vn2","vn3"]
k = [6,4,5]

# for each value
for i in range(len(v)):
    # add each list entry as dictionarys keys, values
    json_dict['data'].append({ label[0] : v[i], label[1]: k[i] })

检查它是否与所需的json对象匹配:

json_object = { "data": [ { "name": "vn1", "id": 6 }, { "name": "vn2", "id": 4 }, { "name": "vn3", "id": 5 } ] }

>>> json_dict == json_object
True

相关问题 更多 >

    热门问题