创建具有理解能力的字典
2022-09-05 00:55:19
是否可以使用列表理解语法来创建字典?
例如,通过迭代键和值对:
d = {... for k, v in zip(keys, values)}
是否可以使用列表理解语法来创建字典?
例如,通过迭代键和值对:
d = {... for k, v in zip(keys, values)}
使用字典理解(Python 2.7及更高版本):
{key: value for (key, value) in iterable}
或者,对于更简单的情况或早期版本的Python,请使用dict
构造函数,例如:
pairs = [('a', 1), ('b', 2)]
dict(pairs) #=> {'a': 1, 'b': 2}
dict([(k, v+1) for k, v in pairs]) #=> {'a': 2, 'b': 3}
给定单独的键和值数组,使用带有 zip
的构造函数:dict
keys = ['a', 'b']
values = [1, 2]
dict(zip(keys, values)) #=> {'a': 1, 'b': 2}
2) "zip'ped" from two separate iterables of keys/vals
dict(zip(list_of_keys, list_of_values))
在 Python 3 和 Python 2.7+ 中,字典推导如下所示:
d = {k:v for k, v in iterable}
对于Python 2.6或更早版本,请参阅fortran的答案。