将对象附加到列表
我有一些将结果对象附加到列表的 python 代码。
objs = []
objs.append(results['Contents'])
如果我打印results['Contents'],它看起来像这样:
[
{
"id": 1,
"name", "joe"
},
{
"id": 2,
"name", "jane"
},
{
"id": 3,
"name", "john"
}
]
但是,当我打印时objs,它看起来像这样 - 正如您所看到的,它现在是列表中的一个列表:
[
[
{
"id": 1,
"name", "joe"
},
{
"id": 2,
"name", "jane"
},
{
"id": 3,
"name", "john"
}
]
]
这开始给我带来问题,因为我开始循环并附加更多对象(结构类似于results['Contents']),如下所示:
objs.append(l_objs['Contents'])
当我最终得到这样的结果时:
[
[
{
"id": 1,
"name", "joe"
},
{
"id": 2,
"name", "jane"
},
{
"id": 3,
"name", "john"
}
],
[
{
"id": 4,
"name", "pete"
},
{
"id": 5,
"name", "paul"
},
{
"id": 6,
"name", "pat"
}
]
]
我真正想要的是这样的:
[
{
"id": 1,
"name", "joe"
},
{
"id": 2,
"name", "jane"
},
{
"id": 3,
"name", "john"
},
{
"id": 4,
"name", "pete"
},
{
"id": 5,
"name", "paul"
},
{
"id": 6,
"name", "pat"
}
]
是否可以将这些结果数组附加在一起,以便它们形成一个组合对象?
我希望len(objs)在我的例子中等于 6 而不是 2
回答
您需要使用extend而不是append.
objs = []
objs.extend(results['Contents'])