如何从字典中提取值最高的N个键并存储为集合
提取字典中值最高的前4个键并转为集合
你已经通过sorted(my_dict, key=my_dict.get, reverse=True)[:4]拿到了值最高的前4个键的列表,直接把这个列表传入set()函数就能创建目标集合。
完整代码示例
# 注意:字典的键需要用引号包裹,否则会被当作未定义变量 my_dict = {"Suzanne": 6, "Peter": 9, "Henry": 2, "Paula": 275, "Fritz": 1, "Anita": 80} # 获取值最高的前4个键的列表 top_keys_list = sorted(my_dict, key=my_dict.get, reverse=True)[:4] # 将列表转为集合 my_set = set(top_keys_list) print(my_set)
补充说明
- 集合本身是无序的,所以输出的
my_set元素顺序可能和你给出的示例{Paula, Anita, Peter, Suzanne}不完全一致,但包含的核心元素完全相同。 - 如果需要保留排序后的顺序,集合无法满足需求,你可以改用
list或者Python 3.7+的普通字典(天然保留插入顺序)存储结果。
内容的提问来源于stack exchange,提问作者Jadawa
相关产品推荐
相关产品推荐

