假設我有大量的字典(可能是10'000字典)。我想統計所有字典中每個鍵的數量。即如果我有3點字典:如何統計多個字典中重複鍵的數量?
{1: 'url1', 3: 'url2', 7: 'url3', 5: 'url4'}
{1: 'url1', 7: 'url3'}
{5: 'url4', 10: 'url5'}
然後在結果我應該得到{1: [2, 'url1'], 10: [1, 'url5'], 3: [1, 'url2'], 5: [2, 'url4'], 7: [2, 'url3']}
。
我來到了下面的代碼:
lists = [{1: 'url1', 3: 'url2', 7: 'url3', 5: 'url4'}, {1: 'url1', 7: 'url3'}, {5: 'url4', 10: 'url5'}]
result = {}
for l in lists:
for i in l:
if i in result:
result[i][0] += 1
else:
result[i] = [1, l[i]]
是在沒有更好的(快)的方式來做到這一點?
你的榜樣字典都對同鍵相等的值。那是'dict1 [1] == dict2 [1]'。這對於你的大量字典會是真的嗎? –
@Robᵩ,是的,對於每個相等的鍵值都是一樣的。 –