Py学习  »  Python

python,遍历dictionary对象中的多个列表以查找特定值

n3tl0kr • 4 年前 • 840 次点击  

通过restapi拉取数据,剩下的就是一个包含多个列表的Dictionary对象。我在其中一个列表中寻找一个非常具体的数据点,但是列表的实际数量因字典中的每个项目而异。

我已经尝试使用索引等手动拉这个字段,但是由于列表不总是在同一个位置,我的头撞在墙上了。API结果如下所示。

    b = [
    {'internal': False, 'protocol_parameters': [{'name': 'identifier', 'id': 1, 'value': 'x.x.x.x'}]},
      {'internal': False, 'protocol_parameters': [{'name': 'identifier', 'id': 0, 'value': 'y.y.y.y'}, {'name': 'incomingPayloadEncoding', 'id': 1, 'value': 'UTF-8'}]},
       {'internal': False, 'protocol_parameters': [{'name': 'incomingPayloadEncoding', 'id': 1, 'value': 'UTF-8'}, {'name': 'identifier', 'id': 0, 'value': 'z.z.z.z'}]}]

for a in b:
     c = (a['protocol_parameters'])[0].get('value')
     print(c)

当然,这不会正确解析,因为列表的位置不一致,所以我很好奇是否可以解析字典中的所有列表以查找特定的字符串。无论列表位置如何,我的最终目标如下所示。

x.x.x.x
y.y.y.y
z.z.z.z

在本例中,查找包含“标识符”的所有列表。如果这是一个错误,请道歉:)并感谢您抽出时间。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39399
 
840 次点击  
文章 [ 2 ]  |  最新文章 4 年前