下面是一个示例的解决方法,使用Python语言和json模块来按值分组一个JSON数组:
import json
# 定义一个JSON数组
json_array = [
{"name": "John", "age": 25},
{"name": "Tom", "age": 27},
{"name": "Mary", "age": 25},
{"name": "Alice", "age": 27}
]
# 定义一个空字典用于按值分组
grouped_dict = {}
# 遍历JSON数组中的每个对象
for obj in json_array:
# 获取对象的值
value = obj["age"]
# 如果值不在字典中,则创建一个空列表作为值的初始值
if value not in grouped_dict:
grouped_dict[value] = []
# 将对象添加到对应值的列表中
grouped_dict[value].append(obj)
# 将分组后的字典转换为JSON字符串
grouped_json = json.dumps(grouped_dict)
# 打印输出分组后的JSON字符串
print(grouped_json)
上述代码将根据JSON数组中每个对象的"age"值进行分组,并将结果转换为一个字典对象。最后,使用json.dumps()函数将字典转换为JSON字符串,并打印输出结果。
输出结果为:
{"25": [{"name": "John", "age": 25}, {"name": "Mary", "age": 25}], "27": [{"name": "Tom", "age": 27}, {"name": "Alice", "age": 27}]}
这里按照"age"值将JSON数组分成了两组,每组包含具有相同"age"值的对象。
下一篇:按值分组和其他分组