python字符串索引必须是整数_python – JSON字符串索引必须是整数

关于这个主题有很多问题,但大多数人似乎都忘了打电话给json.loads.

这是我的例子:

import json

json_input = '{ "ar": { "articles": { "12345": {"title": "first title" } , "67890": {"title": "another title" } } } } '

data = json.loads(json_input)

for article in data['ar']['articles']:

print(article['title'])

打印调用因错误而失败:

TypeError: string indices must be integers

我该如何解决这个问题?

解决方法:

您当前打印的内容是文章字典的关键,而不是文章标题本身.如果您在示例中打印文章,它将打印键

In [6]: for article in data['ar']['articles']:

print(article)

...:

67890

12345

要打印文章的标题,请迭代dict中的项目:

In [1]: import json

In [2]: json_input = '{ "ar": { "articles": { "12345": {"title": "first title" } , "67890": {"title": "another title" } } } } '

In [3]: data = json.loads(json_input)

In [4]: for article in data['ar']['articles'].values():

...: print(article['title'])

...:

another title

first title

标签:json,python,python-3-x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值