Skip to main content
 首页 » 编程设计

python之如何在 python3.6 中将包含键和值列表的字典初始化为空集

2025年05月04日12lyj

我尝试使用 dict.fromkeys([1,2,3],set())。这会初始化创建字典,但是当我向任何一个集合添加一个值时,所有集合都会更新!

>>> d=dict.fromkeys([1,2,3],set()) 
>>> d 
>>> {1: set(), 2: set(), 3: set()} 
>>> d[1].add('a') 
>>> d 
>>> {1: {'a'}, 2: {'a'}, 3: {'a'}} 

似乎字典的所有三个值都指的是同一个集合。我想将字典的所有值初始化为空集,以便稍后可以根据键在循环中对这些集执行一些操作。

请您参考如下方法:

使用字典理解

d = {x: set() for x in [1, 2, 3]} 

或使用 collections.defaultdict