将列表中的键值对转换为字典
转换键值对列表,其中每个偶数元素代表一个key和后面的奇数元素是对应的value,存入字典中,语法上最干净的方法是:
b = dict(zip(a[::2], a[1::2]))
这里,zip() 函数将键和值配对,而 dict() 构造函数创建字典。
为了性能优化,在处理大型列表时,请考虑下面的方法,可以避免创建中间列表:
i = iter(a) b = dict(izip(i, i))
在Python 3中,你还可以使用字典理解:
b = {a[i]: a[i+1] for i in range(0, len(a), 2)}
如果在 Python 3 中使用 iter() 或 zip(),请考虑 zip() 的惰性本质并按如下所示使用它:
i = iter(a) b = dict(zip(i, i))
最后,在 Python 3.8 及更高版本中,“walrus”运算符可用于紧凑的单行解决方案:
b = dict(zip(i := iter(a), i))
以上是如何高效地将键值对列表转换为Python字典?的详细内容。更多信息请关注PHP中文网其他相关文章!