@Tayrus0

Как работать с таким json?

Я делаю запрос на API и получаю такой ответ:

[{
    'pl': 'Категория',
    'vl': 'Техника для красоты и здоровья',
    'p': 'category',
    'v': 15060
}, {
    'pl': 'Тип сделки',
    'vl': 'Продажа',
    'p': 'type',
    'v': 'sell'
}, {
    'pl': 'Вся Беларусь',
    'vl': 'Гомельская',
    'p': 'region',
    'v': 2
}, {
    'pl': 'Город / Район',
    'vl': 'Гомель',
    'p': 'area',
    'v': '5'
}, {
    'pl': 'Тип оплаты',
    'vl': 'Цена',
    'p': 'remuneration_type',
    'v': '1'
}, {
    'pl': 'Тип',
    'vl': 'Электромассажеры',
    'p': 'health_equipment_type',
    'v': '60'
}, {
    'pl': 'Производитель',
    'vl': 'Другой',
    'p': 'health_equipment_brand',
    'v': '100'
}, {
    'pl': 'Запчасть',
    'vl': '-',
    'p': 'appliances_spare_part',
    'v': False
}, {
    'pl': 'Состояние',
    'vl': 'Б/у',
    'p': 'condition',
    'v': '1'
}, {
    'pl': 'Товары с Куфар Доставкой',
    'vl': 'Да',
    'p': 'delivery_enabled',
    'v': True
}, {
    'pl': 'Товары с Куфар Оплатой',
    'vl': 'Да',
    'p': 'safedeal_enabled',
    'v': True
}, {
    'pl': 'Возможна доставка',
    'vl': '-',
    'p': 'delivery_pro',
    'v': False
}, {
    'pl': 'Возможна рассрочка',
    'vl': '-',
    'p': 'installment_pro',
    'v': False
}, {
    'pl': 'Возможен обмен',
    'vl': '-',
    'p': 'possible_exchange',
    'v': False
}]


Я хочу получить значение
'pl': 'Город / Район',
    'vl': 'Гомель',
    'p': 'area',
    'v': '5'


Но не могу до него добраться, потому что когда я распаковываю его из списка у меня остается только это
{'pl': 'Тип сделки', 'vl': 'Продажа', 'p': 'type', 'v': 'sell'}


Как работать с этим json?
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Это не json )
Но если хочется получить данные - то например так по ключу 'vl': 'Гомель':
next(filter(lambda x: x['vl'] == 'Гомель', a))
# {'pl': 'Город / Район', 'vl': 'Гомель', 'p': 'area', 'v': '5'}

где в а - ваша структура
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@GeneD88
QA
Ну, тут можешь итерировать все элементы в json и если pl == "Город / Район", то и работать с этим элементом дальше.

for el in jsn:
    if el['pl'] == 'Город / Район':
        print(e)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект