首页 > 解决方案 > 在字典内的列表中定位元素的索引值

问题描述

我需要使用它的值而不是它的索引来访问字典中数组的某些值

例如:

message_dict = {
  '123456,896': 
      [[3453, 57634], [9984, 97585]], 
  '157384,899':
      [[3455, 57647], [9989, 97592]]
}

如果我想访问 57634,我可以这样做:

s = '123456,896'
message_dict[s][0][1]

我想使用 [0] 的值来查找 57634

我尝试直接指定值,但语法无效。

s = '123456,896'
i = 3453
message_dict[s]i[1]

这会报告语法错误,但我不知道如何指定值,而不是值在数组中的位置。

标签: pythonpython-3.x

解决方案


这里有一个解决方案:

next((x[1] for x in message_dict[s] if x[0] == i), None)

None如果没有找到值,则给出。


推荐阅读