Skip to main content
 首页 » 编程设计

python之如何使用字典中的重复键生成列表

2025年05月04日14JustinYoung

我有一本字典

a_dict = {1: 1, 4: 2, 5: 3, 6: 4} 

我想创建一个列表,使字典键出现值的次数:

a_list = [1, 4, 4, 5, 5, 5, 6, 6, 6, 6]   

我现在的代码是这样的:

a_list = [] 
 
for key in a_dict.keys(): 
    for value in a_dict.values(): 

我不知道下一步该做什么?

请您参考如下方法:

这可以使用带有嵌套 for 循环的列表理解以简洁的方式完成:

>>> d = {1: 1, 4: 2, 5: 3, 6: 4} 
>>> [k for k, v in d.items() for _ in range(v)] 
[1, 4, 4, 5, 5, 5, 6, 6, 6, 6] 

但是,请注意 dict 是无序数据结构,因此结果列表中键的顺序是任意的。

请问您要将结果列表用于什么目的?也许有更好的方法来解决实际问题。