以下是一个按值对嵌套的哈希表进行排序的解决方法的代码示例:
# 定义一个嵌套的哈希表
hash_table = {
'A': {'score': 80, 'age': 18},
'B': {'score': 90, 'age': 20},
'C': {'score': 75, 'age': 22},
}
# 使用sorted函数和lambda表达式对哈希表中的值进行排序
sorted_hash_table = sorted(hash_table.items(), key=lambda x: x[1]['score'], reverse=True)
# 打印排序后的结果
for key, value in sorted_hash_table:
print(key, value)
输出结果会按照哈希表中每个值的score属性进行降序排序:
B {'score': 90, 'age': 20}
A {'score': 80, 'age': 18}
C {'score': 75, 'age': 22}
在上述代码中,我们使用了sorted函数来对哈希表中的值进行排序。lambda表达式lambda x: x[1]['score']
指定了排序的键值,即按照哈希表中每个值的score属性进行排序。由于我们希望按降序排序,所以指定了reverse=True
参数。最后,我们使用for循环打印排序后的结果。