我在Python3中较新,现在陷入了一个问题。

问题陈述:我有一个defaultdict,其中一个键有多个值。在这些多个值中,存在相似和不同的值。

现在,我想获取每个键的摘要(基于唯一记录的计数数)。

字典(命名为“ d”),如下所示defaultdict(,{'0':['“ 126”},','“ 115”},','“ 60”},'],'1':[' “ 126”},'],'2':['“ 126”},','“ 126”},','“ 126”},','“ 148”},','“ 99”} ,'],'3':['“ 126”},','“ 226”},'],'4':['“ 126”},','“ 90”},'],})

预期产量:

0: countALL :3; 1: countALL :1; 2: countALL :3; 3: countALL :2; 4: countALL :2;


例如,对于键“ 2”,有3条记录,分别为126、148中的1和99中的1。因此,由于存在三种类型的唯一记录,因此摘要将为3。

这是供我研究使用的Python3程序,用于区分来自网络的不同类型的流量。

预期结果:

0: countALL :3; 1: countALL :1; 2: countALL :3; 3: countALL :2; 4: countALL :2;

最佳答案

这是我对您的问题的解释的答案,尽管我的解释可能不正确。

from collections import Counter

data = {1: [2,3,4,3,4], 2: [6,5,3,5]}

for key, values in data.items():
    print(f'{key} has the following unique counts {Counter(values)}')


输出以下内容:

1 has the following unique counts Counter({3: 2, 4: 2, 2: 1})
2 has the following unique counts Counter({5: 2, 6: 1, 3: 1})

10-06 11:00