2017-02-22 3 views
1

Я работаю над программой python, которая подключается к базе данных и возвращает запись. Я получил следующий ответ, но я не могу извлечь переменную для «Geofence» из результата.Python Response Тип данных - Как получить доступ к данным

я могу получить «Items», выполнив response["Items"], но я не могу понять, как получить вниз «Geofence», как в: "S": "Geofence"

{ 
    "Count": 1, 
    "Items": [ 
    { 
     "Lat": { 
     "N": "34.065" 
     }, 
     "Serial": { 
     "S": "0001" 
     }, 
     "Lon": { 
     "N": "32.875" 
     }, 
     "Geofence": { 
     "S": "Geofence" 
     }, 
     "Time": { 
     "S": "20170221T010628Z" 
     } 
    } 
    ], 
    "LastEvaluatedKey": { 
    "Serial": { 
     "S": "0001" 
    }, 
    "Time": { 
     "S": "20170221T010628Z" 
    } 
    }, 
    "ScannedCount": 1 
    } 
} 

ответ

3

Как response["Items"] список, вам нужно соответствующий индекс (в данном случае это 0), а затем перейти к ключевому "Geofence" и "S"

print (response["Items"][0]["Geofence"]["S"]) 

выведет результат:

"Geofence" 

Если у вас есть более чем один пункт в списке, вы могли бы цикл их:

res = [] 
for item in di["Items"]: 
    res.append(item["Geofence"]["S"]) 

print (res) 

>>> ['Geofence'] 
Смежные вопросы