我从字典中得到以下输出。
{'001': {'desc': 'Verify all commands.', 'result': 'P', 'name': '001', 'run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'},
'002': {'desc': 'Verify all commands.', 'result': 'F', 'name': '002', 'run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'}}
我想要的是从name
result
获取F
?
如果有人能告诉我实现所需输出的方法,将会很有帮助。
答案 0 :(得分:2)
迭代dict.values
:
for v in my_dict.values():
if v['result'] == 'F':
print v['name']
<强>演示:强>
my_dict = {'001': {'desc': 'Verify all commands.', 'result': 'P', 'name': '001','run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'},
'002': {'desc': 'Verify all commands.', 'result': 'F', 'name': '002', 'run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'} }
for v in my_dict.values():
if v['result'] == 'F':
print v['name']
<强>输出:强>
002
答案 1 :(得分:2)
这将是names
所有result
F
data = {'001': {'desc': 'Verify all commands.', 'result': 'P', 'name': '001', 'run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'},
'002': {'desc': 'Verify all commands.', 'result': 'F', 'name': '002', 'run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'},
'003': {'desc': 'Verify all commands.', 'result': 'F', 'name': '003', 'run_time': '00:00:30', 'start_time': '1382943624', 'end_time': '1382943654'}}
print [value["name"] for key, value in data.items() if value["result"] == "F"]
列表
['002', '003']
<强>输出强>
{{1}}