以下是一个使用Python的示例代码,用于按相关性/排名对搜索结果进行排序:
# 模拟搜索结果数据
search_results = [
{'title': 'Result 1', 'relevance': 0.8, 'rank': 3},
{'title': 'Result 2', 'relevance': 0.6, 'rank': 1},
{'title': 'Result 3', 'relevance': 0.9, 'rank': 2},
{'title': 'Result 4', 'relevance': 0.7, 'rank': 4},
]
# 按相关性排序
sorted_by_relevance = sorted(search_results, key=lambda x: x['relevance'], reverse=True)
# 按排名排序
sorted_by_rank = sorted(search_results, key=lambda x: x['rank'])
# 输出结果
print("按相关性排序结果:")
for result in sorted_by_relevance:
print(result)
print("\n按排名排序结果:")
for result in sorted_by_rank:
print(result)
这个示例代码首先定义了一个包含搜索结果的列表,每个搜索结果都有一个'标题'、'相关性'和'排名'属性。然后使用sorted()
函数对搜索结果进行排序,传入一个lambda函数作为key参数,用于指定根据哪个属性进行排序。使用reverse=True
参数可以实现降序排序。
最后,使用循环遍历排序后的结果并输出。按相关性排序的结果会按照相关性从高到低排列,而按排名排序的结果会按照排名从低到高排列。