как в словарь добавить следующие поля?

Рейтинг: 0Ответов: 1Опубликовано: 10.02.2023

Нужно в словарь person поместить 'tag' и 'similarity' не совсем понимаю как это сделать. persons = []

{'body': {'objects': [{'name': 'file_0',
                       'persons': [{'age': 25,
                                    'arousal': 0.2795,
                                    'awesomeness': 0.515,
                                    'confidence': 0.99998,
                                    'coord': [210, 0, 486, 333],
                                    'emotion': 'Contempt',
                                    'frontality': 0.9711,
                                    'sex': 'male',
                                    'similarity': 0.9966,
                                    'tag': 'person53281',
                                    'valence': -0.3675,
                                    'visibility': 0.9995}],
                       'status': 0}]},
 'htmlencoded': False,
 'last_modified': 0,
 'status': 200}

Ответы

▲ 4Принят

Начните с понятного форматирования структуры ваших данных:

from pprint import pprint

data = {'status': 200, 'body': {'objects': [{'status': 0, 'name': 'file_0', 'persons': [{'tag': 'person53281', 'coord': [210, 0, 486, 333], 'confidence': 0.99998, 'awesomeness': 0.515, 'similarity': 0.9966, 'sex': 'male', 'emotion': 'Contempt', 'age': 25, 'valence': -0.3675, 'arousal': 0.2795, 'frontality': 0.9711, 'visibility': 0.9995}]}]}, 'htmlencoded': False, 'last_modified': 0}
pprint(data)

Вывод:

{'body': {'objects': [{'name': 'file_0',
                       'persons': [{'age': 25,
                                    'arousal': 0.2795,
                                    'awesomeness': 0.515,
                                    'confidence': 0.99998,
                                    'coord': [210, 0, 486, 333],
                                    'emotion': 'Contempt',
                                    'frontality': 0.9711,
                                    'sex': 'male',
                                    'similarity': 0.9966,
                                    'tag': 'person53281',
                                    'valence': -0.3675,
                                    'visibility': 0.9995}],
                       'status': 0}]},
 'htmlencoded': False,
 'last_modified': 0,
 'status': 200}

Так уже гораздо понятнее, что где находится. То, что с одинаковым отступом - находится на одинаковом уровне вложенности. {...} - словари, доступ по ключу, [...] - списки, доступ по индексу.

А дальше идёте сверху вниз, пока не доберётесь до нужного уровня. Начиная от data['body'], а дальше уж вы сами разберитесь, это полезно.