index = {
u'when_air': 0,
u'chrono': 1,
u'age_marker': 2,
u'name': 3
}
我怎样才能使这种方式比手动设置每个值更美观(和清晰)?
喜欢:
index = dict_from_range(
[u'when_air', u'chrono', u'age_marker', u'name'],
range(4)
)
最佳答案
>>> names = [u'when_air', u'chrono', u'age_marker', u'name']
>>> print(dict(zip(names, range(4))))
{'chrono': 1, 'name': 3, 'age_marker': 2, 'when_air': 0}
zip()
将返回一个元组列表,其中每个元组都是 names
和 range(4 )
。 dict()
知道如何从中创建字典。
请注意,如果您将长度不均匀的序列提供给 zip()
,结果将被截断。因此,使用 range(len(names))
作为参数可能是明智的,以保证相等的长度。
>>> print(dict(zip(names, range(len(names)))))
{'chrono': 1, 'name': 3, 'age_marker': 2, 'when_air': 0}
关于python - 根据范围设置字典值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23359099/