这个问题可以使用Python中的字典和排序方法来解决。下面是一个示例代码:
data = [
{"name": "John", "status": "active", "date": "2021-01-01"},
{"name": "Mary", "status": "inactive", "date": "2021-02-15"},
{"name": "Jane", "status": "active", "date": "2021-03-10"},
{"name": "Peter", "status": "inactive", "date": "2021-02-28"},
{"name": "David", "status": "active", "date": "2021-02-05"}
]
# 创建一个空字典用于按照状态分类存储数据
grouped_data = {}
# 按照状态分类存储数据
for item in data:
status = item["status"]
if status not in grouped_data:
grouped_data[status] = []
grouped_data[status].append(item)
# 根据最后日期排序每个状态的数据
for status, items in grouped_data.items():
sorted_items = sorted(items, key=lambda x: x["date"], reverse=True)
grouped_data[status] = sorted_items
# 打印结果
for status, items in grouped_data.items():
print(f"Status: {status}")
for item in items:
print(f"Name: {item['name']}, Date: {item['date']}")
print()
这个代码将按照状态分类,并在每个状态下按照最后日期进行排序。最后的打印结果将按独特的名称和状态分组,并按最后日期排序。
上一篇:按独特的客户和月份求和
下一篇:按独特ID求和并自动删除