我想提取具有特定键值对的JSON对象

weylhg0b  于 2022-10-02  发布在  Python
关注(0)|答案(1)|浏览(92)

我有一个来自API的JSON响应,如下所示:

"get_result_by_result_id": [{
    "data": {
        "date_trunc": "2022-09-06T00:00:00+00:00",
        "project": "Smoothy Finance",
        "usd_volume": 42307.09145419092
    },

}, {
    "data": {
        "date_trunc": "2022-09-30T00:00:00+00:00",
        "project": "curve",
        "usd_volume": 40548.688138892685
    },

},  {
    "data": {
        "date_trunc": "2022-09-14T00:00:00+00:00",
        "project": " kyber",
        "usd_volume": 13800038.727002844
    },

},]

我希望提取响应中具有“Kyber”值的所有对象,如下所示:

"common_objects": [{
        "data": {
            "date_trunc": "2022-09-14T00:00:00+00:00",
            "project": " kyber",
            "usd_volume": 13800038.727002844
        },

    }, {
        "data": {
            "date_trunc": "2022-09-07T00:00:00+00:00",
            "project": " kyber",
            "usd_volume": 24518356.073168807
        },},]

我该怎么做呢?

nwwlzxa7

nwwlzxa71#

我认为您的json已损坏,因此我对其进行了一些编辑,以下是您可以如何操作:

data = [{
    'data': {
        'date_trunc': '2022-09-06T00:00:00+00:00',
        'project': 'Smoothy Finance',
        'usd_volume': 42307.09145419092
    }

}, {
    'data': {
        'date_trunc': '2022-09-30T00:00:00+00:00',
        'project': 'curve',
        'usd_volume': 40548.688138892685
    }

},  {
    'data': {
        'date_trunc': '2022-09-14T00:00:00+00:00',
        'project': ' kyber',
        'usd_volume': 13800038.727002844
    }

}]

clear_data = []
for data in data:
    if(data['data']['project'] == ' kyber'):
        clear_data.append(data)

print(clear_data)

相关问题