Art*_*nov 2 python dictionary list
假设有一个列表:['1604780184', '10', '1604780194', '0', '1604780319', '99', '1604780320', '0']
您需要得到如下结果:{'1604780184': '10', '1604780194': '0', '1604780319': '99', '1604780320': '0'}
现在我有这样的:
rline = ['1604780184', '10', '1604780194', '0', '1604780319', '99', '1604780320', '0']
total = {}
print(f"My list: {rline}")
while rline:
total[rline[0:2][0]] = rline[0:2][1]
del rline[0:2]
print(f"Dictionary: {total}")
Run Code Online (Sandbox Code Playgroud)
请告知更好的方法。谢谢。
最简洁(也可能是最好)的方法可能是:
result = dict(zip(lst[::2], lst[1::2]))
Run Code Online (Sandbox Code Playgroud)
它实际上所做的是利用您的列表遵循的一些模式和一些内置函数!由于每个偶数索引都是待值,奇数索引是待关键,因此更容易对它们进行切片和分离。然后您可以使用zip()形成这些分隔值的集合,然后调用dict()构造函数从中提取字典!