以下是一个示例代码,将一个包含生日的列表按照生日排序:
from datetime import datetime
data = [
{"name": "John", "birthday": "1990-01-01"},
{"name": "Alice", "birthday": "1992-05-20"},
{"name": "Bob", "birthday": "1985-12-10"},
{"name": "Claire", "birthday": "1995-08-15"}
]
# 定义一个函数,用于将生日字符串转换为日期对象
def get_birthday(person):
return datetime.strptime(person["birthday"], "%Y-%m-%d")
# 使用sorted函数和lambda表达式对列表进行排序
sorted_data = sorted(data, key=lambda x: get_birthday(x))
# 打印排序后的结果
for person in sorted_data:
print(person["name"], person["birthday"])
运行以上代码,输出结果为:
Bob 1985-12-10
John 1990-01-01
Alice 1992-05-20
Claire 1995-08-15
这段代码首先定义了一个函数get_birthday
,用于将生日字符串转换为日期对象。然后使用sorted
函数对列表进行排序,key
参数指定了排序的依据,这里使用lambda
表达式调用get_birthday
函数获取每个人的生日,并按照生日进行排序。最后遍历排序后的结果并打印出姓名和生日。
上一篇:按照生日进行排序的SQL