从Python: create dict from list and auto-gen/increment the keys (list is the actual key values)?开始,可以使用dict
从list
创建enumerate
,以生成由生活中的增量键和元素组成的元组,即:
>>> 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']
,如何实现字典,其中元素作为键和增量索引值为,而不试图循环额外的时间来反转字典?
答案 0 :(得分:1)
简单地说:
>>> x = ['a', 'b', 'c']
>>> {j:i for i,j in enumerate(x)}
{'a': 0, 'c': 2, 'b': 1}