首页 > 解决方案 > 如何使用python3从json中的dicts列表中解析内容

问题描述

我的 json 文件:

{
"data": [
    {
        "features": {
            "location": "West Springfield, MA",
            "geo_type": "User location",
            "screen_name": "JtTatro",
            "primary_geo": "West Springfield, MA",
            "id": 2158092352,
            "tweets": 1,
            "name": "Jim Tatro"
        },
        "user_id": 2158092352
    }

,
{
            "features": {
                "location": "Tijuana, Baja California",
                "geo_type": "User location",
                "screen_name": "YuitziContreras",
                "primary_geo": "Tijuana, Baja California",
                "id": 996917180980744193,
                "tweets": 1,
                "name": "yuitzi contreras"
            },
            "user_id": 996917180980744193
        }
    ]
}

我正在尝试解析存储在功能字典中的数据。到目前为止我的代码:

import json

input_file = open ('file.json')
json_array = json.load(input_file)
tweet_list = []
features_list = []
user_list =[]

for item in json_array:
        for item2 in json_array[item]:
            tweet_list.append(item2)


for features,user in tweet_list:
    print(features,user)

上面的代码返回字典名称:features, user_id。如何获取每个 dict 字段的内容以便我可以将它们传递到我的数据库?

例如,获取位置、geo_type 等。

标签: pythonjsonpython-3.x

解决方案


在 JSON 中,[]表示一个数组,而{}表示一个对象。Python 将 JSON 对象(例如{"features": ..., "user_id": ...})解析为 dict。您应该使用.items()方法从字典中获取键值对。迭代一个 dict 只给出键。


推荐阅读