python相同中文字符串id不同_解析具有不同值的多个相同字符串的Python-JSON

我遇到了一个问题,我试图解析JSON中存在不止一次的id字符串。我正在使用一个来自json库的请求。我试图检索“id”的所有值,但只能成功地提取我定义的值。json示例:{

"apps": [{

"id": "app1",

"id": "app2",

"id": "new-app"

}]

}

因此,到目前为止,我所做的是将json响应转换为dictionary,以便实际解析“id”的第一次迭代。我曾尝试创建for循环,但在尝试查找字符串id或TypeError时遇到keyrerror:列表索引必须是整数或切片,而不是str。我唯一能成功做到的就是定义要输出的id位置。在

^{pr2}$

如果一次只有一个id字符串,但总是多个,并且位置会不时变化,那么这就可以了。在

那么如何从这个json输出中返回“id”的所有字符串的值呢?完整代码如下:import requests

url = "http://x.x.x.x:8080/v2/apps/"

response = requests.get(url)

#Error if not 200 and exit

ifresponse.status_code!=200:

print("Status:", response.status_code, "CheckURL.Exiting")

exit()

#Turn response into a dict and parse for ids

data = response.json()

for n in data:

print(data['apps'][0]['id'])

OUTPUT:

app1

更新:

多亏了Robᵩ才得以解决问题。我最后用的是:def list_hook(pairs):

result = {}

for name, value in pairs:

if name == 'id':

result.setdefault(name, []).append(value)

print(value)

data = response.json(object_pairs_hook = list_hook)

另外,我作为示例发布的API并不是真正的API。它只是一个视觉上的表现,我试图实现。我实际上在使用Mesosphere's Marathon API。尝试为端口映射容器构建一个python侦听器。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值