Найти - Пользователи
Полная версия: Обработка множества
Начало » Центр помощи » Обработка множества
1 2
V_ladimir
Добрый день!
Задана некая структура) Даже не знаю как ее назвать. Следующего вида
data = [
{
“faceRectangle”: {
“left”: 68,
“top”: 97,
“width”: 64,
“height”: 97
},
“scores”: {
“anger”: 0.00300731952,
“contempt”: 5.14648448E-08,
“disgust”: 9.180124E-06,
“fear”: 0.0001912825,
“happiness”: 0.9875571,
“neutral”: 0.0009861537,
“sadness”: 1.889955E-05,
“surprise”: 0.008229999
}
}
]

в одно множество вложено 2 других.
Как отсюда получить значения переменных?
т.е.
left = 68
top = 97 и так далее

Как вообще обрабатываются вложенные множества?
sander
V_ladimir
здесь нет множеств, есть словари
JOHN_16
словари поддерживают итерационный протокол т.е. по ним можно проходиться циклом for, при этом значениями будут являться ключи словаря. Для обхода вложенных структур применяют вложенные циклы. Все просто, вы разберетесь
V_ladimir
Спасибо!!! Разобрался
V_ladimir
Извините) еще вопрос. А как преобразовать бинарную строку b' в словарь?
Shaman
Может быть она ещё и в формате json?
JOHN_16
V_ladimir
бинарная строка не переводится в словарь это принципиально разные типы данных
py.user.next
  
>>> data = [
...     {'faceRectangle': {'left': 68,
...                        'top': 97,
...                        'width': 64,
...                        'height': 97},
...      'scores': {'anger': 0.00300731952,
...                 'contempt': 5.14648448E-08,
...                 'disgust': 9.180124E-06,
...                 'fear': 0.0001912825,
...                 'happiness': 0.9875571,
...                 'neutral': 0.0009861537,
...                 'sadness': 1.889955E-05,
...                 'surprise': 0.008229999}}
... ]
>>> 
>>> left = data[0]['faceRectangle']['left']
>>> left
68
>>> top = data[0]['faceRectangle']['top']
>>> top
97
>>> 
V_ladimir
py.user.next

Спасибо! очень интересно
V_ladimir
JOHN_16
V_ladimirбинарная строка не переводится в словарь это принципиально разные типы данных

в итоге написал програмульку. может и коряво, но работает)

def binary_to_dictionary(binary):
# binary = b''
b1 = binary.decode('UTF-8') # декодируем
b2 = b1 # удаляем первый символ
b3 = b2 # удаляем последний символ
return eval(b3) # преобразуем в словарь
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB