以下是一个示例代码,演示如何根据分组列的长度进行排序:
data = [
{'name': 'John', 'group': 'Group 1'},
{'name': 'Alice', 'group': 'Group 2'},
{'name': 'Bob', 'group': 'Group 1'},
{'name': 'Jane', 'group': 'Group 3'},
{'name': 'Eve', 'group': 'Group 3'},
{'name': 'Michael', 'group': 'Group 2'}
]
# 按照分组列的长度进行排序
sorted_data = sorted(data, key=lambda x: len(x['group']))
# 输出排序结果
for item in sorted_data:
print(item['name'], item['group'])
运行以上代码,将得到以下输出:
John Group 1
Bob Group 1
Alice Group 2
Michael Group 2
Jane Group 3
Eve Group 3
代码中使用了sorted
函数和lambda
表达式来指定排序的规则。key
参数是一个函数,用于将每个元素转换为排序依据。在这个例子中,lambda
表达式lambda x: len(x['group'])
将每个元素的分组列的长度作为排序依据。最后,使用for
循环遍历排序后的结果并输出。