Ссылка на части больших файлов JSON

#python #json

Вопрос:

В настоящее время я пытаюсь заставить python анализировать JSON, аналогичный тому, который находится в https://petition.parliament.uk/petitions/560216.json. Моя проблема в том, что нужные мне данные вложены во множество частей, и я не знаю, как сказать python, какую часть взять.

Упрощенная версия нужных мне данных приведена ниже

 {
    "data": {
        "attributes": {
            "signatures_by_country": [
                {
                    "name": "Afghanistan",
                    "code": "AF",
                    "signature_count": 1
                },
                {
                    "name": "Algeria",
                    "code": "DZ",
                    "signature_count": 2
                },
            ]
        }
    }
}
 

Я пытаюсь вытащить эту "signature_count" роль.

Ответ №1:

Приведенный ниже код собирает то, что вы просили, в список

 data = {
    "data": {
        "attributes": {
            "signatures_by_country": [
                {
                    "name": "Afghanistan",
                    "code": "AF",
                    "signature_count": 1
                },
                {
                    "name": "Algeria",
                    "code": "DZ",
                    "signature_count": 2
                },
            ]
        }
    }
}

counts = [x['signature_count'] for x in data['data']['attributes']['signatures_by_country']]
print(counts)
 

выход

 [1,2]
 

Подсчет по странам ниже

 counts = [{x['name']:x['signature_count']} for x in data['data']['attributes']['signatures_by_country']]
 

выход

 [{'Afghanistan': 1}, {'Algeria': 2}]
 

Комментарии:

1. Ах, так вот как это работает, спасибо!