首页 > 解决方案 > Python比较两个字典值之间的Numpy数组的值

问题描述

我有 2 个字典和一个输入

letter = 'd'

dict_1 = {"label_1": array(['a','b']), "label_2": array(['c','d']), ...}
dict_2 = {"label_1": array(['x','y']), "label_2": array(['z','o']), ...}

letter_translated = some_function(letter)

所需的输出:'o'

我现在想到的是从键的数组中获取索引号,"label_2"然后dict_1dict_2. 我对其他方式持开放态度。如果您对问题不清楚,请随时发表评论。

注意:数组是 numpy 数组

标签: python

解决方案


“索引”是什么意思?数字?

字典没有条目计数索引的概念。您只能通过键(此处为“label_2”)或通过迭代 ( for key in dict_1 ...) 访问数据。

订单不能保证,并且可以更改。订单或您的声明不会被保留。

如果您希望两者都有“label_2”,那么您需要访问

key = "label_2"
item_from_1 = dict_1[key]
item_from_2 = dict_2[key]

如果你需要迭代dict_1,那么在每个item上找到第二个合适的item,那么这也需要遍历key:

for (key,value1) in dict_1.iteritems():
    value2 = dict_2[key]
     .....

请注意,项目在循环中出现的顺序可能会有所不同。即使从程序的一次运行到下一次。


推荐阅读