【发布时间】:2021-02-22 17:14:39
【问题描述】:
我有一个 json 对象的 python 数组,我只需这样做即可实例化:
results = []
然后我进行 API 调用,并将 api_results['a_results'] 分配给我的数组,如下所示:
api_results = api_func(url, session)
if loop = 0:
results.append(api_results['a_results']) #NB: The 'a_results' object here is an array of json
else:
results[0].append(api_results['a_results'])
objects
第一次调用时,一切都按预期工作:
[
[
{
object 1
},
{
object 2
}
]
]
但是,如果找不到一定数量的结果,则逻辑会再次循环,我希望将新结果附加到旧对象。这就是我遇到问题的地方。
下一次迭代,对象是这样的:
[
[
{
old object 1
},
{
old object 2
},
[
{
new object 3
},
{
new object 4
}
]
]
]
所以数组被附加在对象 2 之后,而不是实际的对象。
有什么办法可以解决这个问题吗?本质上,当不满足阈值时,我想要一个由 4 个对象组成的数组,而不是一个由原始 2 个对象组成的数组,然后是一个包含 2 个新对象的子数组。
我真的想在数组中追加对象,而不是我猜的数组
【问题讨论】:
-
尝试将 else 语句更改为
records.append(api_results['a_results'])。 -
这只会导致第三个和第四个对象被添加为不同级别的数组
标签: python arrays python-3.x