Python 如何在嵌套字典中获取值
我很难从这个混乱的字典/列表中找出某个值。。试图打印目标|更改Python 如何在嵌套字典中获取值,python,dictionary,Python,Dictionary,我很难从这个混乱的字典/列表中找出某个值。。试图打印目标|更改 example = [{'add_app_key_to_env': {'app': '"fdsgsd"', 'commit_message': '"Add key dsfgfd to app fdsgsd"', 'ecntype': '"core"', 'env': '"{{ targ
example = [{'add_app_key_to_env': {'app': '"fdsgsd"',
'commit_message': '"Add key dsfgfd to app fdsgsd"',
'ecntype': '"core"',
'env': '"{{ target_env }}"',
'key': '"dsfgfd"',
'password': '"{{ password }}"',
'username': '"{{ username }}"',
'value': '"{{ sdfgd }}"'},
'name': '"[Step 1] Add key dsfgfd to app fdsgsd"',
'register': '"est1"',
'when': 'TEST1|CHANGED OR TEST2|CHANGED '},
{'name': '"[Step 2] Trigger siteops envkeys regeneration"',
'trigger_tc_build': {'build_id': 'bt15300',
'password': '"{{ AD_PASSWORD }}"',
'username': '"{{ AD_USER }}"',
'wait_for_completion': '"yes"'},
'when': 'TARGET|CHANGE '},
{'add_app_key_to_env': {'app': '"sdfg"',
'commit_message': '"Add key hdfgh to app sdfg"',
'ecntype': '"core"',
'env': '"{{ target_env }}"',
'key': '"hdfgh"',
'password': '"{{ password }}"',
'username': '"{{ username }}"',
'value': '"{{ dfgh }}"'},
'name': 'Add key hdfgh to app sdfg',
'register': '"test2"'}]
当前当我打印示例[-0]['when']
我得到
TEST1 | CHANGE或TEST2 | CHANGE
。问题是我正试图获得TARGET | CHANGE
。我对如何获得目标更改感到困惑,因为它们似乎都有相同的“when”键。这只是三个单独字典的列表
you_want = example[1]
In [71]: you_want
Out[71]:
{'name': '"[Step 2] Trigger siteops envkeys regeneration"',
'trigger_tc_build': {'build_id': 'bt15300',
'password': '"{{ AD_PASSWORD }}"',
'username': '"{{ AD_USER }}"',
'wait_for_completion': '"yes"'},
'when': 'TARGET|CHANGE '}
In [72]: you_want.get('when')
Out[72]: 'TARGET|CHANGE '
示例[1]['when']
尝试使用pprint
打印词典。更有意义。示例[1]['when']给了我索引错误:列表超出范围