Попробуйте это ...
intermediate_output = [
[
"Environment",
"ok"
],
[
"Memory",
"ok"
]
]
final_output = [[{"component": x[0], "status": x[1]}] for x in intermediate_output]
print(final_output)
Вывод:
[[{'component': 'Environment', 'status': 'ok'}], [{'component': 'Memory', 'status': 'ok'}]]
РЕДАКТИРОВАТЬ:
Теперь, если вы хотите список всех компонентов, прежде чем двигаться вперед, Я бы посоветовал вам удалить свой вложенный список и сделать его простым списком.
>>> striped_list = [list1[0] for list1 in final_output]
>>> striped_list
[{'component': 'Environment', 'status': 'ok'}, {'component': 'Memory', 'status': 'ok'}]
Теперь используйте понимание списка ...
>>> list_of_components = [item['component'] for item in striped_list]
>>> list_of_components
['Environment', 'Memory']
Для статуса определенного компонент, снова вы можете использовать для циклов или списков.
>>> my_component = "Environment" # we have to find status of this component
>>> my_component_status = [item['status'] for item in striped_list if item['component'] == my_component]
>>> my_component_status
['ok']
Отличная документация для понимания списка списков
https://www.pythonforbeginners.com/basics/list-comprehensions-in-python
Ура !!