以下是一个按照内部数组的特定元素进行分组的解决方法的示例代码:
def group_by_inner_element(arr, key):
groups = {}
for inner_arr in arr:
if inner_arr[key] not in groups:
groups[inner_arr[key]] = []
groups[inner_arr[key]].append(inner_arr)
return groups
# 示例用法
arr = [
{'name': 'Alice', 'age': 25},
{'name': 'Bob', 'age': 30},
{'name': 'Charlie', 'age': 25},
{'name': 'Dave', 'age': 30}
]
# 按照年龄分组
groups = group_by_inner_element(arr, 'age')
print(groups)
# 输出结果:
# {
# 25: [{'name': 'Alice', 'age': 25}, {'name': 'Charlie', 'age': 25}],
# 30: [{'name': 'Bob', 'age': 30}, {'name': 'Dave', 'age': 30}]
# }
在这个示例中,我们定义了一个名为group_by_inner_element
的函数,它接受一个包含多个字典的列表arr
和一个指定内部元素的键key
作为参数。函数遍历arr
中的每个字典,将内部元素的特定值作为键,将具有相同内部元素特定值的字典添加到对应的值列表中。最后,函数返回一个字典,其中键是内部元素特定值,值是具有相同内部元素特定值的字典列表。
在示例用法中,我们定义了一个包含人名和年龄的字典列表,并使用group_by_inner_element
函数按照年龄进行分组。最后,我们打印出分组结果。
上一篇:按内部属性过滤的JSON数组
下一篇:按内部数组排序