python - 如何获取字典来显示数字显示计数?

标签 python list dictionary math

我有一个像下面这样的嵌套列表:

list = [
    [1, 2, 4, 5],
    [2, 3, 4, 5],
    [1, 3, 4, 5, 6],
    [1, 2, 3],
]

我想得到一个字典来显示数字显示计数,字典应该如下所示:

{ '1': 3, 
  '2': 3, 
  '3': 3, 
  '4': 3, 
  '5': 3, 
  '6': 1 }

如何获得?

最佳答案

首先可以通过将所有元素(从列表中取出内部元素)合并到单个列表然后使用计数器来展平列表:

from collections import Counter
dict(Counter(inneritem for item in list for inneritem in item))

结果:

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

如果您希望项目作为键,可以将每个项目转换为字符串并将它们传递给 Counter:

dict(Counter(str(inneritem) for item in list for inneritem in item))

关于python - 如何获取字典来显示数字显示计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49227843/

相关文章:

python查找文件并将目录更改为文件路径

python - 如何使用 OpenCV 和 Python 在视频流中逐帧处理视频图像

python - 值的长度与索引的长度不匹配

python - PyModule_New 的目的和用法

r - 将R中不完整的数据帧组合成矩阵

c - C 中的映射数组 - 带键 : Value 的链表

python - 根据另一个列表对列表列表进行排序

python - 模拟 list.insert() 方法作为 Python 列表的子类

python - 将字典的字典转换为列表的字典

c# - ASP.NET MVC 绑定(bind)到字典