Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.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_Json - Fatal编程技术网

Python 从json打印输出

Python 从json打印输出,python,json,Python,Json,我对python还是新手,对json也是全新的。我正在尝试遍历json格式的输出。我还不确定哪些字段需要打印出来,但我知道需要其中两个字段 我怎样才能改变: import json from pprint import pprint with open('out.json') as data_file: data = json.load(data_file) pprint(data) 打印出来,比如说,字段1和字段2 我想如果我可以打印字段1和字段2,我可以一直使用它,直到

我对python还是新手,对json也是全新的。我正在尝试遍历json格式的输出。我还不确定哪些字段需要打印出来,但我知道需要其中两个字段

我怎样才能改变:

import json
from pprint import pprint

with open('out.json') as data_file:    
    data = json.load(data_file)

pprint(data)
打印出来,比如说,字段1和字段2


我想如果我可以打印字段1和字段2,我可以一直使用它,直到找到正确的字段。我想这是一个derp级别的问题,但我需要能够打印特定字段

json.load
正在返回python obj(),因此根据“out.json”的内容,它可以是dict、list或其他几种类型

对于字典,您可以使用
数据['key']
或者如果是列表,则使用
数据[索引]
-其中索引是
1,2,…

对于循环,请使用
For
ie For list:

for elem in data:
    print(elem)
字典的名称:

for key, value in data.items():
    print(key, value)

你本可以很容易地找到它的

这里的数据是一个
dict
类型的对象。使用相应的键可以获得任意值,如下所示:

print data['field'] 
但是如果
dict
中不存在
字段
键,它将抛出
键错误。为了避免此问题,可以使用
get()
方法

print data.get('field')

如果钥匙丢失,这将返回
None

打印(数据['field1'])
。。。!?如果您知道字段的名称,则在加载数据文件后,您将要打印-->打印数据['field_name'](python 2…)或打印(data['field_name'])(python 3),该文件将成为一个字典,从中您可以打印任何您想要的键。非常感谢。我越来越近了。out.json看起来像:{“success”:true,“response”:[{“category”:“Utility”,“score”:120.0}}}如果我说:print(data['category'),我会得到一个错误。看看你的数据。”“类别”不是根元素,而是“响应”列表的一部分。因此,在这个cace中,您应该执行“打印(数据['response'][0]['category']),因为“category”是包含在主字典的“response”键中的列表中第一个元素的一部分