pro*_*eek 27 python dictionary list
我需要将列表转换为字典,如下所示.奇数元素具有键,偶数元素具有值.
x = (1,'a',2,'b',3,'c') - > {1: 'a', 2: 'b', 3: 'c'}
def set(self, val_):
i = 0
for val in val_:
if i == 0:
i = 1
key = val
else:
i = 0
self.dict[key] = val
Run Code Online (Sandbox Code Playgroud)
获得相同结果的更好方法是什么?
i = iter(k)
print dict(zip(i,i))
Run Code Online (Sandbox Code Playgroud)
好像在起作用
Ale*_*lli 37
dict(x[i:i+2] for i in range(0, len(x), 2))
Run Code Online (Sandbox Code Playgroud)
Joh*_*ooy 12
以下是Python3使用dict理解的几种方法
>>> x = (1,'a',2,'b',3,'c')
>>> {k:v for k,v in zip(*[iter(x)]*2)}
{1: 'a', 2: 'b', 3: 'c'}
>>> {x[i]:x[i+1] for i in range(0,len(x),2)}
{1: 'a', 2: 'b', 3: 'c'}
Run Code Online (Sandbox Code Playgroud)
Mar*_*nen 11
>>> x=(1,'a',2,'b',3,'c')
>>> dict(zip(x[::2],x[1::2]))
{1: 'a', 2: 'b', 3: 'c'}
Run Code Online (Sandbox Code Playgroud)