gpt4 book ai didi

python - 嵌套字典 python 中唯一值的计数

转载 作者:太空宇宙 更新时间:2023-11-04 10:09:08 25 4
gpt4 key购买 nike

我有一个像这样的字典:

dict = {
"a": {"Azerbaijan": 20006.0, "Germany": 20016.571428571428},
"b": {"Chad": 13000.0, "South Africa": 3000000.0},
"c": {"Chad": 200061.0, "South Africa": 3000000.0}
}

我正在尝试获取每个独特国家和值的出现次数。

例如,{"Chad": 2, "South Africa": 2,..},{"3000000": 2, "13000": 1,..}

我正在使用下面的代码,它可以工作但不是很聪明,有没有更好的方法来做到这一点而不需要很长的迭代周期,因为实际的字典很大?

seencountries = {}
seenvalues = {}

for key, innerdict in dict.iteritems():
for country, value in innerdict.iteritems():
if value not in seenvalues.keys():
seenvalues[value] = 0
seenvalues[value]+=1
if country not in seencountries.keys():
seencountries[country] = 0
seencountries[country]+=1

print seencountries

print seenvalues

最佳答案

from collections import Counter
seen_countries = Counter()
seen_values = Counter()
for data in your_dicts.itervalues():
seen_countries += Counter(data.keys())
seen_values += Counter(data.values())

关于python - 嵌套字典 python 中唯一值的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39353428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com