搜索字典数组并提取值

FLX*_*FLX 0 python arrays multidimensional-array

我得到了以下数据:

[{'name': 'SqueezePlay', 'power': '1', 'playerid': '91:e2:b5:24:49:63', 'ip': '192.168.1.144:51346', 'canpoweroff': 1, 'displaytype': 'none', 'seq_no': '10', 'connected': 1, 'isplayer': 1, 'model': 'squeezeplay', 'uuid': 'fgh79fg7h98789798978'}, {'name': "FLX's iPhone", 'power': '1', 'playerid': '4c:32:d1:45:6c:4e', 'ip': '84.105.161.205:53972', 'canpoweroff': 1, 'displaytype': 'none', 'seq_no': 0, 'connected': 1, 'isplayer': 1, 'model': 'iPengiPod', 'uuid': '9791c009e3e7fghfg346456456'}]
Run Code Online (Sandbox Code Playgroud)

我改变了隐私价值的意义.我想根据"name"(例如"SqueezePlay")搜索数组,然后我将检索"playerid"(例如"91:e2:b5:24:49:63").

在Python中执行此操作的最有效方法是什么?谢谢!

eum*_*iro 9

如果你的dicts列表是data,那么你可以试试这个:

next(d for d in data if d['name'] == 'SqueezePlay')['playerid']
Run Code Online (Sandbox Code Playgroud)

这将返回'91:e2:b5:24:49:63'(对于给定名称的第一次出现).

你必须定义如果name不在你的作品中该怎么做data.