要按照两个条件对列表进行排序,可以使用Python的sorted()
函数,并结合lambda
函数来定义排序规则。
假设我们有一个包含字典的列表,每个字典都包含两个键值对:'name'和'age'。我们希望按照'age'从小到大的顺序对列表进行排序,如果'age'相同,则按照'name'的字母顺序进行排序。
以下是一个示例代码:
people = [
{'name': 'John', 'age': 25},
{'name': 'Alice', 'age': 30},
{'name': 'Bob', 'age': 20},
{'name': 'Jane', 'age': 25}
]
# 按照'age'从小到大的顺序排序,如果'age'相同则按照'name'的字母顺序排序
sorted_people = sorted(people, key=lambda x: (x['age'], x['name']))
# 输出排序后的结果
for person in sorted_people:
print(person)
运行以上代码,输出结果为:
{'name': 'Bob', 'age': 20}
{'name': 'Jane', 'age': 25}
{'name': 'John', 'age': 25}
{'name': 'Alice', 'age': 30}
可以看到,列表根据'age'从小到大排序,如果'age'相同,则按照'name'的字母顺序排序。
下一篇:按照两个条件对PHP数组进行排序