【发布时间】:2016-10-07 10:10:23
【问题描述】:
从Python: create dict from list and auto-gen/increment the keys (list is the actual key values)?,可以使用enumerate从list创建一个dict,以生成由生活中增量键和元素组成的元组,即:
>>> x = ['a', 'b', 'c']
>>> list(enumerate(x))
[(0, 'a'), (1, 'b'), (2, 'c')]
>>> dict(enumerate(x))
{0: 'a', 1: 'b', 2: 'c'}
还可以通过遍历dict中的每个键来反转键值(假设键值对之间存在一对一的映射:
>>> x = ['a', 'b', 'c']
>>> d = dict(enumerate(x))
>>> {v:k for k,v in d.items()}
{'a': 0, 'c': 2, 'b': 1}
给定输入列表['a', 'b', 'c'],如何实现以元素为键、增量索引为值的字典无需尝试循环额外的时间来反转字典?
【问题讨论】:
-
enumerate(i for i in x)与enumerate(x)相同 -
谢谢!在星期五工作的最后一个小时,我真是瞎了眼。哈哈哈……
标签: python list dictionary