首页 > 解决方案 > 过滤嵌套数组 Python

问题描述

使用“json.dumps(response.json(), indent=4”后我有一个这样的输出数组

{
    "totalCount": 8,
    "hasMore": false,
    "firstIndex": 0,
    "list": [
        {
            "id": "7d5bb8asdfasdfasfdasdfasdfasdf",
            "name": "Corporate",
            "domainType": "AAAAAAAA",
            "description": "",
            "createdBy": "admin",
            "createDatetime": "2020/06/04 17:40:22",
            "parentDomainId": "8b208asdfasdfasdfasdfasdfas",
            "zoneCount": 2,
            "subDomainCount": 1,
            "administratorCount": 0,
            "apCount": 0,
            "zeroTouchStatus": true
        },

现在,当我尝试按如下方式过滤它时 print(results['name']) 或 print(results['list'][0]['name'])

我不断收到此错误消息:TypeError:字符串索引必须是整数

这以 dict {} 开头,然后这里有 dict {} 的列表 []。基于此,它应该可以工作。感谢任何指导。谢谢你。

标签: pythonarraysnested

解决方案


您发布的数据清楚地表明它仍然是文本格式的 JSON。使用转换为 python dictjson.loads()

result = json.loads(response.json())
print(results['name']) 
print(results['list'][0]['name'])

推荐阅读