Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从json输出中查找值_Python_Arrays_Json - Fatal编程技术网

Python 从json输出中查找值

Python 从json输出中查找值,python,arrays,json,Python,Arrays,Json,我有一个url的以下api输出。 我需要这些区域中所有“区域”的特定值,但我无法获取它。 你能建议我需要在这里做些什么改变吗 dict =[ { "Fabric": "Madgth", "Zones": "rqu_kan23_34334_6666_56713", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:65:36:e4:20:ea" }, { "Fabric": "Madgth", "Zones": "rqu_kan23_C9AE9F10_666

我有一个url的以下api输出。 我需要这些区域中所有“区域”的特定值,但我无法获取它。 你能建议我需要在这里做些什么改变吗

dict =[ { "Fabric": "Madgth", "Zones": "rqu_kan23_34334_6666_56713", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:65:36:e4:20:ea" }, { "Fabric": "Madgth", "Zones": "rqu_kan23_C9AE9F10_6666_ytr9", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:69:36:e4:20:ea" }, { "Fabric": "Madgth", "Zones": "sdgh_5672_kan23_asd0", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:62:46:e0:70:bc" }, { "Fabric": "Madgth", "Zones": "fdsf_ytr2_kan23_dsd1", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:6a:46:e0:70:t5" }, { "Fabric": "Madgth", "Zones": "asdasd_5673_kan21_sdg0", "Members": "00:00:00:00:c9:ae:9f:14 40:00:01:63:47:60:04:b2" }, { "Fabric": "Madgth", "Zones": "FGF546_ytr3_kan21_SHQ1", "Members": "00:00:00:00:c9:ae:9f:14 40:00:01:6b:47:60:04:b2" }, { "Fabric": "sdfsdf", "Zones": "rqu_kan23_C9AE9F11_6666_5678", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:60:36:e4:20:ea" }, { "Fabric": "sdfsdf", "Zones": "rqu_kan23_C9AE9F11_6666_ytr12", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:6c:36:e4:20:ea" }, { "Fabric": "sdfsdf", "Zones": "FGF1166_5673_kan23_SHQ0", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:63:46:e0:70:bc" }, { "Fabric": "sdfsdf", "Zones": "FGF1166_ytr3_kan23_SHQ1", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:6b:46:e0:70:bc" }, { "Fabric": "sdfsdf", "Zones": "FGF546_5670_kan21_SHQ0", "Members": "00:00:00:00:c9:ae:9f:15 40:00:01:60:47:60:04:b2" }, { "Fabric": "sdfsdf", "Zones": "FGF546_ytr0_kan21_SHQ1", "Members": "00:00:00:00:c9:ae:9f:15 00:00:00:00:47:60:04:b2" } ]
print dict['Zones']
我似乎有以下错误

文件“test.py”,第3行,在 print dict['Zones']TypeError:元组索引必须是整数,而不是str


这只是一张单子,你必须像这样做

dict[0]['Zones']
样本与错误消息不匹配。给出的示例是对应于元组的字典和错误消息列表

要获取所有
“区域”
请使用

zones = [i['Zones'] for i in dict if 'Zones' in i]
请不要使用
dict
作为变量名

关于评论中的澄清

In [16]: dict =[ { "Fabric": "Madgth", "Zones": "rqu_kan23_34334_6666_56713", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:65:36:e4:20:ea" }, {
    ...:  "Fabric": "Madgth", "Zones": "rqu_kan23_C9AE9F10_6666_ytr9", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:69:36:e4:20:ea" }, { "Fabri
    ...: c": "Madgth", "Zones": "sdgh_5672_kan23_asd0", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:62:46:e0:70:bc" }, { "Fabric": "Madgth", "
    ...: Zones": "fdsf_ytr2_kan23_dsd1", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:6a:46:e0:70:t5" }, { "Fabric": "Madgth", "Zones": "asdasd
    ...: _5673_kan21_sdg0", "Members": "00:00:00:00:c9:ae:9f:14 40:00:01:63:47:60:04:b2" }, { "Fabric": "Madgth", "Zones": "FGF546_ytr3_kan21_S
    ...: HQ1", "Members": "00:00:00:00:c9:ae:9f:14 40:00:01:6b:47:60:04:b2" }, { "Fabric": "sdfsdf", "zones": "rqu_kan23_C9AE9F11_6666_5678", "
    ...: Members": "00:00:00:00:c9:ae:9f:11 40:00:01:60:36:e4:20:ea" }, { "Fabric": "sdfsdf", "Zones": "rqu_kan23_C9AE9F11_6666_ytr12", "Member
    ...: s": "00:00:00:00:c9:ae:9f:11 40:00:01:6c:36:e4:20:ea" }, { "Fabric": "sdfsdf", "Zones": "FGF1166_5673_kan23_SHQ0", "Members": "00:00:0
    ...: 0:00:c9:ae:9f:11 40:00:01:63:46:e0:70:bc" }, { "Fabric": "sdfsdf", "Zones": "FGF1166_ytr3_kan23_SHQ1", "Members": "00:00:00:00:c9:ae:9
    ...: f:11 40:00:01:6b:46:e0:70:bc" }, { "Fabric": "sdfsdf", "Zones": "FGF546_5670_kan21_SHQ0", "Members": "00:00:00:00:c9:ae:9f:15 40:00:01
    ...: :60:47:60:04:b2" }, { "Fabric": "sdfsdf", "Zones": "FGF546_ytr0_kan21_SHQ1", "Members": "00:00:00:00:c9:ae:9f:15 00:00:00:00:47:60:04:
    ...: b2" } ]

In [17]: print dict['Zones']
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-17-cccdb30efad8> in <module>()
----> 1 print dict['Zones']

TypeError: list indices must be integers, not str
[16]:dict=[{“Fabric”:“Madgth”,“Zones”:“rqu_kan23_34334_6666_56713”,“Members”:“00:00:00:c9:ae:9f:10 40:00:01:65:36:e4:20:ea”{ “织物”:“Madgth”,“Zones”:“rqu_kan23_C9AE9F10_6666_ytr9”,“成员”:“00:00:00:c9:ae:9f:10 40:00:01:69:36:e4:20:ea”},{“Fabri” …c:“Madgth”,“Zones:“sdgh_5672_kan23_asd0”,“Members:“00:00:00:00:c9:ae:9f:10 40:00:01:62:46:e0:70:bc”},{“Fabric:“Madgth”,” 区域“:”fdsf_ytr2_kan23_dsd1“,”成员“:”00:00:00:c9:ae:9f:10 40:00:01:6a:46:e0:70:t5“,”,“{”结构“:”制造“,”区域“:”asdasd“,” …成员:00:00:00:00:c9:ae:9f:14 40:00:01:63:47:60:04:b2“},{“织物”:“制造”,“分区”:“FGF546”ytr3\U kan21\U S …HQ1,“成员”:“00:00:00:00:c9:ae:9f:14 40:00:01:6b:47:60:04:b2”},{“结构”:“sdfsdf”,“区域”:“rqu_kan23_C9AE9F11_6666_5678” …:成员“:”00:00:00:c9:ae:9f:11 40:00:01:60:36:e4:20:ea“},{”结构“:”sdfsdf“,”区域“:”rqu_kan23_C9AE9F11_6666_ytr12”,“成员” …s:“00:00:00:00:c9:ae:9f:11 40:00:01:6c:36:e4:20:ea”},{“结构”:“sdfsdf”,“分区”:“FGF1166_5673_kan23_SHQ0”,“成员”:“00:00:0” …0:00:c9:ae:9f:11 40:00:01:63:46:e0:70:bc“},{“结构”:“sdfsdf”,“分区”:“FGF1166_ytr3_kan23_SHQ1”,“成员”:“00:00:00:00:c9:ae:9” …:f:11 40:00:01:6b:46:e0:70:bc“},{“结构”:“sdfsdf”,“分区”:“FGF546_5670_kan21_SHQ0”,“成员”:“00:00:00:c9:ae:9f:15 40:00:01” …::60:47:60:04:b2“},{“结构”:“sdfsdf”,“分区”:“FGF546”ytr0\U kan21\U SHQ1,“成员”:“00:00:00:00:c9:ae:9f:15 00:00:00:00:47:60:04: …:b2“}] 在[17]中:打印dict['Zones'] --------------------------------------------------------------------------- TypeError回溯(最近一次调用上次) 在() ---->1打印指令[“区域”] TypeError:列表索引必须是整数,而不是str
您提供的dict在声明中有一些错误,以下是修复的错误:

dict =[ { "Fabric": "Madgth", "Zones": "rqu_kan23_34334_6666_56713", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:65:36:e4:20:ea" }, { "Fabric": "Madgth", "Zones": "rqu_kan23_C9AE9F10_6666_ytr9", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:69:36:e4:20:ea" }, { "Fabric": "Madgth", "Zones": "sdgh_5672_kan23_asd0", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:62:46:e0:70:bc" }, { "Fabric": "Madgth", "Zones": "fdsf_ytr2_kan23_dsd1", "Members": "00:00:00:00:c9:ae:9f:10 40:00:01:6a:46:e0:70:t5" }, { "Fabric": "Madgth", "Zones": "asdasd_5673_kan21_sdg0", "Members": "00:00:00:00:c9:ae:9f:14 40:00:01:63:47:60:04:b2" }, { "Fabric": "Madgth", "Zones": "FGF546_ytr3_kan21_SHQ1", "Members": "00:00:00:00:c9:ae:9f:14 40:00:01:6b:47:60:04:b2" }, { "Fabric": "sdfsdf", "zones": "rqu_kan23_C9AE9F11_6666_5678", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:60:36:e4:20:ea" }, { "Fabric": "sdfsdf", "Zones": "rqu_kan23_C9AE9F11_6666_ytr12", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:6c:36:e4:20:ea" }, { "Fabric": "sdfsdf", "Zones": "FGF1166_5673_kan23_SHQ0", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:63:46:e0:70:bc" }, { "Fabric": "sdfsdf", "Zones": "FGF1166_ytr3_kan23_SHQ1", "Members": "00:00:00:00:c9:ae:9f:11 40:00:01:6b:46:e0:70:bc" }, { "Fabric": "sdfsdf", "Zones": "FGF546_5670_kan21_SHQ0", "Members": "00:00:00:00:c9:ae:9f:15 40:00:01:60:47:60:04:b2" }, { "Fabric": "sdfsdf", "Zones": "FGF546_ytr0_kan21_SHQ1", "Members": "00:00:00:00:c9:ae:9f:15 00:00:00:00:47:60:04:b2" } ]
现在,像这样的简单代码可以:

list = []
for i in dict:
    list.append(i["Zones"])

您可以简单地循环列表并打印它

for item in dict:
    print item['Zones']

但不建议使用
dict
作为变量名;)

使用列表理解
[i['Zones']表示di中的i]
并且不要使用
dict
表示变量名,dict是内置的。您提供了一个列表,并想知道如何获得元组索引。该代码不会产生该错误。相反,它会产生语法错误。因为您有几个语法错误。@StefanPochmann错误仅与元组相关。请检查它的列表中只知道的变量。查看问题中的
dict
。这是字典列表。他得到了
TypeError:tuple索引
而不是
TypeError:list索引
,代码示例只能生成
TypeError:list索引
。可能错误地粘贴了样品。它可能是一个元组,像
dict=({…},{…},)
。我把dict修好了一点,现在我没有收到你们争论的任何错误?