在Python中从两个数组/列表生成哈希

4

如何使用两个等长数组创建哈希对象,在该对象中,一个数组的元素(键)与另一个数组的元素(值)相对应。

例如,在Java中可以使用HashMap:

String[] keys= {"apple", "banana", "cherry"};
int[] vals= {1, 2, 3};
HashMap<String, Integer> hash= new HashMap<String, Integer>();

for(int i= 0; i < keys.length; i++){
   hash.put(keys[i], vals[i]);
}

如何使用Python完成这个任务?


4
只需要执行 dict(zip(keys, vals)) 即可。 - vaultah
2个回答

7
为了后人,似乎应该将这作为正式答案添加。(取自评论。)
dict(zip(keys, vals))

3
你可以在Python中使用字典推导式来实现相同的结果,只需在其中使用zip函数即可:
>>> keys = ['apple', 'banana', 'cherry']
>>> values = [1, 2, 3]
>>> hash = {key: value for key, value in zip(keys, values)}
>>> hash
{'apple': 1, 'banana': 2, 'cherry': 3}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接