以下是一个按照关系列进行排序的示例代码:
# 定义关系列表
relation_list = [
{'name': 'Alice', 'relation': 'friend'},
{'name': 'Bob', 'relation': 'colleague'},
{'name': 'Charlie', 'relation': 'family'},
{'name': 'Dave', 'relation': 'friend'},
{'name': 'Eve', 'relation': 'family'},
{'name': 'Frank', 'relation': 'colleague'}
]
# 定义关系顺序
relation_order = ['family', 'friend', 'colleague']
# 按照关系顺序进行排序
sorted_list = sorted(relation_list, key=lambda x: relation_order.index(x['relation']))
# 输出排序结果
for item in sorted_list:
print(item)
运行以上代码,输出结果为:
{'name': 'Charlie', 'relation': 'family'}
{'name': 'Eve', 'relation': 'family'}
{'name': 'Alice', 'relation': 'friend'}
{'name': 'Dave', 'relation': 'friend'}
{'name': 'Bob', 'relation': 'colleague'}
{'name': 'Frank', 'relation': 'colleague'}
以上代码使用了Python的sorted()
函数,通过传入key
参数指定排序的标准。lambda x: relation_order.index(x['relation'])
表示对于每个关系字典,使用关系在relation_order
列表中的索引作为排序标准。最后,按照关系顺序对关系列表进行排序,并输出结果。
下一篇:按照关系的数量排序结果。