我有这些清单:
list1 = ["a","b","c"]
list2 = ["1","2","3"]
Run Code Online (Sandbox Code Playgroud)
我需要将它们添加到字典中,其中list1是键,list2是值.
我写了这段代码:
d = {}
for i in list1:
for j in list2:
d[i] = j
print d
Run Code Online (Sandbox Code Playgroud)
输出是这样的:
{'a':'3','b':'3','c':'3'}
Run Code Online (Sandbox Code Playgroud)
这段代码出了什么问题?如何编写它以便输出
{'a':'1','b':'2','c':'3'}
Run Code Online (Sandbox Code Playgroud)
谢谢!
Vin*_*ard 14
压缩列表并使用字典理解:
{i: j for i, j in zip(a, b)}
Run Code Online (Sandbox Code Playgroud)
或者,更简单,只需使用dict():
dict(zip(a, b))
Run Code Online (Sandbox Code Playgroud)
你应该保持简单,所以最后的解决方案是最好的,但我保留了dict理解的例子来说明它是如何完成的.
你已经快到了,只是你需要同时迭代列表
In [1]: list1 = ["a","b","c"]
In [2]: list2 = ["1","2","3"]
In [3]: d = {}
In [4]: for i, j in zip(list1, list2):
...: d[i] = j
...:
In [5]: print d
{'a': '1', 'c': '3', 'b': '2'}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4659 次 |
| 最近记录: |