字典值存儲列表
示例構建了列表相同值的索引的字典鍵值對,0,1,2,3,4,6這些索引的值都是3,5索引值是1,分別作爲字典的鍵和值
方法一、dict.setdefault(key, default=None)
- key -- 查找的鍵值。
- default -- 鍵不存在時,設置的默認鍵值。
如果字典中包含有給定鍵,則返回該鍵對應的值,否則返回爲該鍵設置的值。
sample = [3, 3, 3, 3, 3, 1, 3]
dic = {}
for i,_id in enumerate(sample):
dic.setdefault(_id, []).append(i)
print(dic)
{3: [0, 1, 2, 3, 4, 6], 1: [5]}
方法二、from collections import defaultdict
from collections import defaultdict
sample = [3, 3, 3, 3, 3, 1, 3]
dic = defaultdict(list)
for i, _id in enumerate(sample):
dic[_id].append(i)
print(dic)
{3: [0, 1, 2, 3, 4, 6], 1: [5]}