首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Python中使用列表中的键和空值来初始化dict?

如何在Python中使用列表中的键和空值来初始化dict?
EN

Stack Overflow用户
提问于 2010-02-11 10:43:19
回答 5查看 367.7K关注 0票数 309

我想从中得到以下结论:

代码语言:javascript
复制
keys = [1,2,3]

要这样做:

代码语言:javascript
复制
{1: None, 2: None, 3: None}

有没有一种巨蟒式的方式来做到这一点?

这是一种丑陋的方式:

代码语言:javascript
复制
>>> keys = [1,2,3]
>>> dict([(1,2)])
{1: 2}
>>> dict(zip(keys, [None]*len(keys)))
{1: None, 2: None, 3: None}
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-02-11 10:45:35

dict.fromkeys([1, 2, 3, 4])

这实际上是一个类方法,所以它也适用于dict子类(如collections.defaultdict)。可选的第二个参数指定要用于键的值(默认为None)。

票数 465
EN

Stack Overflow用户

发布于 2010-02-11 19:18:18

没有人愿意给出一个字典理解的解决方案?

代码语言:javascript
复制
>>> keys = [1,2,3,5,6,7]
>>> {key: None for key in keys}
{1: None, 2: None, 3: None, 5: None, 6: None, 7: None}
票数 320
EN

Stack Overflow用户

发布于 2010-02-11 10:48:22

代码语言:javascript
复制
dict.fromkeys(keys, None)
票数 73
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2241891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档