python字典值的内容大小

时间:2014-10-21 19:24:53

标签: python dictionary

我想找到与字典中的键相关联的值的大小。

dict = {0:({0,1,0},{0,2,1},{0,4,2}),1:{1,2,4},2:({2,3,2},{2,3,4}),3:{},4:{}}

对于上述,我想要:

键 - 大小

  • 0 - 3
  • 1 - 1
  • 2 - 2
  • 3 - 0
  • 4 - 0

2 个答案:

答案 0 :(得分:1)

您可以使用实际键和与其对应的项目的长度构建一个新词典,使用词典理解,就像这样

>>> {num: len(d[num]) for num in d}
{0: 3, 1: 3, 2: 2, 3: 0, 4: 0}

在这里,我们遍历字典的键,然后使用num: len(d[num]),我们使用与新键相同的键以及与键对应的值的长度作为新值。

答案 1 :(得分:0)

为了匹配您想要的输出,我们需要特殊set

>>> print('\n'.join("{}-{}".format(key, 1 if isinstance(val, set) else len(val)) for key, val in dct.items()))
0-3
1-1
2-2
3-0
4-0