以下是一个按名称对二维数组进行分组的示例代码:
def group_by_name(arr):
groups = {}
for item in arr:
name = item[0] # 假设数组中每个元素的第一个元素是名称
if name in groups:
groups[name].append(item)
else:
groups[name] = [item]
return groups
# 示例用法
array = [['Alice', 1], ['Bob', 2], ['Alice', 3], ['Bob', 4]]
result = group_by_name(array)
print(result)
运行上述代码将输出:
{'Alice': [['Alice', 1], ['Alice', 3]], 'Bob': [['Bob', 2], ['Bob', 4]]}
上述代码中,首先创建了一个空字典 groups
,用于存储按名称分组的结果。然后,使用一个循环遍历数组中的每个元素。对于每个元素,获取其名称,并检查该名称是否已经在 groups
中存在。如果存在,则将该元素添加到对应的分组中;如果不存在,则创建一个新的分组,并将该元素添加到新的分组中。最后,返回分组结果 groups
。
请注意,上述示例代码假设数组中的每个元素都是一个包含名称和其他数据的子数组。你可以根据实际情况调整代码以适应不同的数据结构。
上一篇:按名称对对象数组排序错误