来自python中两个数组/列表的哈希值

时间:2017-05-21 10:23:34

标签: python python-3.x hash hashmap

使用两个长度相等的数组,如何创建一个Hash对象,其中一个数组中的元素(键)链接到另一个数组(值)。

例如在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?

2 个答案:

答案 0 :(得分:4)

对于后代来说,似乎应该将其添加为正式答案。 (摘自评论。)

dict(zip(keys, vals))

答案 1 :(得分:2)

你可以在字典理解中使用zip来在python中实现相同的结果:

>>> 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}