从现有JSON数组的嵌套键/值创建新的JSON数组,可以通过遍历原始数组,提取需要的键/值对,并将其组合成新的JSON数组。
以下是一个示例的实现方法:
import json
def create_new_json_array(original_array, nested_key):
new_array = []
for item in original_array:
nested_value = item.get(nested_key)
if nested_value is not None:
new_item = {nested_key: nested_value}
new_array.append(new_item)
return new_array
# 示例数据
original_array = [
{"name": "Alice", "age": 25, "address": {"city": "New York", "country": "USA"}},
{"name": "Bob", "age": 30, "address": {"city": "London", "country": "UK"}},
{"name": "Charlie", "age": 35, "address": {"city": "Paris", "country": "France"}}
]
# 创建新的JSON数组,提取address键的值
new_json_array = create_new_json_array(original_array, "address")
# 打印新的JSON数组
print(json.dumps(new_json_array, indent=4))
输出结果为:
[
{
"address": {
"city": "New York",
"country": "USA"
}
},
{
"address": {
"city": "London",
"country": "UK"
}
},
{
"address": {
"city": "Paris",
"country": "France"
}
}
]
在这个示例中,我们定义了一个create_new_json_array
函数,它接受原始JSON数组和需要提取的嵌套键作为参数。函数遍历原始数组的每个元素,使用get
方法获取指定键的值,并将其组合成新的JSON对象。最后,将所有新的JSON对象组成的数组返回。
这个方法适用于需要从嵌套的JSON数据中提取特定键/值对的场景,例如从用户信息中提取地址信息、从产品信息中提取价格信息等。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云