首页 > 解决方案 > 在 Python 中:从键列表创建字典,但将所有值设置为 0?

问题描述

我找到了从两个列表创建字典的优雅解决方案:

keys = [a, b, c]
values = [1, 2, 3]
list_dict = {k:v for k,v in zip(keys, values)}

但是我无法为每个键的单个值(0)的键列表编写一些东西。我试图做类似的事情:

list_dict = {k:v for k,v in (zip(keys,[0 for i in range(keys)]))}

但是应该可以使用简单的语法,例如:

dict_totals = {k:v for k,v in zip(keys,range(0,3))}

我希望输出看起来像 {a:0, b:0, c:0}。我错过了一些明显的东西吗?

标签: pythonlistdictionary

解决方案


使用dict.fromkeys备用初始化程序:

dict.fromkeys(keys, 0)

并为您提供一种更简单的方法来完成第一个:

dict(zip(keys, values))

推荐阅读