<p>使用嵌套列表理解(3个嵌套迭代器非常笨拙):</p>
<pre><code>import json
jsn = """[
{
"id": "talend",
"envs":
[
{"id":"DEV",
"lServeurs" :
[
{"sshServer":"jardev0", "sshPort":"20022","sshUser":"talend"},
{"sshServer":"jardev01","sshPort":"20022","sshUser":"talend"}
]
},
{"id": "PROD",
"lServeurs" :
[
{"sshServer": "jardprd01", "sshPort": "20023","sshUser":"talend"}
]
}
]
},
{
"id": "eprel",
"envs":
[
{"id": "DEV",
"lServeurs" :
[
{"sshServer": "jardev0", "sshPort": "20024", "sshUser":"eprel"},
{"sshServer": "jardev01", "sshPort": "20025", "sshUser":"eprel"}
]
},
{"id": "PROD",
"lServeurs" :
[
{"sshServer": "jardprd01", "sshPort": "20026","sshUser":"eprel"}
]
}
]
}
]"""
x = json.loads(jsn)
targetPorts = [server['sshPort'] for envsKV in x for env in envsKV['envs'] for server in env['lServeurs'] if envsKV['id']=="talend" and env['id']=="DEV" and server['sshServer']=="jardev0"]
print(targetPorts[0])
</code></pre>