我试图遍历JSON列表以打印出以下所有结果:
return self.__dict__.copy()
我试图通过以下方式迭代它:
"examples": [
{
"text": "carry all of the blame"
},
{
"text": "she left all her money to him"
},
{
"text": "we all have different needs"
},
{
"text": "he slept all day"
},
{
"text": "all the people I met"
},
{
"text": "10% of all cars sold"
}
],
但这只是打印第一个例子的每个字母,与整个例子相反,其次是其他整个例子。
我可以按照自己的意愿迭代这些,还是需要为每个示例创建单独的变量?
答案 0 :(得分:0)
按照您的代码和示例,看起来您需要的是:
for example in json_data['results'][0]['lexicalEntries'][0]['entries'][0]['senses'][0]['examples']:
print(example["text"])
在您的代码中,通过执行json_data['results'][0]['lexicalEntries'][0]['entries'][0]['senses'][0]['examples'][iterator]['text']
,您只访问iterator
项,因此,始终是第一个(iterator = 0),然后迭代“text”的内容构件。
答案 1 :(得分:0)
仅将json数据索引到'examples':
json_example = json_data ['results'] [0] ['lexicalEntries'] [0] ['entries'] [0] ['sense'] [0] ['examples']
然后将'examples'的每个元素视为字典:
for dictionary in json_example:
for key in dictionary:
print(dictionary[key])
这将打印出与关键字“文字”相关的每个值,如您所愿。