Skip to main content
 首页 » 编程设计

Python通过匹配值获取json数组项

2025年05月04日16linjiqin

<分区>

所以我有一个 json 数据数组,如下所示:

[{ 
  "first_name": "Joe", 
  "last_name": "Smith", 
  "numbers": [1,2,3,4,5] 
}, { 
  "first_name": "Jane", 
  "last_name": "Doe", 
  "numbers": [6,4,1,35,2] 
}, { 
  "first_name": "Mike", 
  "last_name": "Everyman", 
  "numbers": [8,5,3,2,4,5] 
}] 

如何只选择 last_name = Doe 的数组项?我正在尝试将我用 ruby​​ 编写的一些代码转换为 python,因为 lambda 不支持 ruby​​ :( 我的 ruby 代码如下所示:

match = data.select {|x| x[:last_name] == 'Doe'} 

哪个返回:

{ 
 "first_name": "Jane", 
 "last_name": "Doe", 
 "numbers": [6,4,1,35,2] 
} 

另外,我知道这在 ruby​​ 技术上行不通,因为数据是 json 形式,但我将它从散列转换为 json,并且不想将其改回原样,因为基本思想仍然相同。