繁体   English   中英

字符串索引必须是整数错误

[英]String indices must be integers error

我想解析出从以下代码获得的json:

import json
from watson_developer_cloud import ToneAnalyzerV3Beta
import urllib.request
import codecs
reader = codecs.getreader("utf-8")
tone_analyzer = ToneAnalyzerV3Beta(
    url='https://gateway.watsonplatform.net/tone-analyzer/api',
    username='<username>',
    password='<password>',
    version='2016-02-11')

data=json.dumps(tone_analyzer.tone(text='I am very happy'), indent=2)
print (data)

for cat in data['document_tone']['tone_categories']:
    print('Category:', cat['category_name'])
    for tone in cat['tones']:
        print('-', tone['tone_name'])

并不断出错:字符串索引必须是整数不确定我在哪里丢球,但我真的很感谢这个帮助。

json.dumps()将对象转换为字符串。 因此, data是一个字符串。 因此,您不能使用'document_tone'键对其进行索引(这不是dict )。 也许你是说json.loads() 或者, tone_analyzer.tone()已经返回了一个dict并且不需要loads()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM