一个JSON对象携带一个键/值对形式的数据。键是字符串,而值是JSON的数据类型。键和值用冒号分开。每个键/值对用逗号隔开。
Python有一个内置的包json,要使用json,在脚本中导入json包。
Python json load
Python json.load() 是一个内置方法,它接受一个文件对象并返回json对象。使用json.load()方法,你可以将JSON编码/转换的数据变成Python数据类型;这个过程被称为JSON解码。
语法
json.load(file_object)
参数
它需要一个文件对象作为参数。
解码时JSON和Python实体之间的映射关系
JSON | PYTHON |
---|---|
对象 | 字典 |
数组 | 列表 |
字符串 | str |
数值(int) | int |
数(实数) | float |
真 | 真 |
假 | 假的 |
空 | 无 |
让我们按照下面的步骤来使用json.load()函数。
如何在Python中加载json文件
要在Python中加载一个json文件,使用json.load()函数。使用open()方法打开一个json文件,创建一个文件对象,并将该文件对象传递给json.load()函数。
第一步:创建一个JSON文件
为了使用json.load()函数,创建一个data.json 文件:
{
"data": [
{
"color": "red",
"value": "#f00"
},
{
"color": "green",
"value": "#0f0"
},
{
"color": "blue",
"value": "#00f"
},
{
"color": "black",
"value": "#000"
}
]
}
我们将加载data.json 文件。
因此,在我们的例子中,我们将加载外部json文件并将其转换为Python类型。
第二步:打开json文件
要在Python中打开一个文件,使用open()方法。你也可以使用Python with语句来打开文件。它返回文件对象。
# app.py
import json
# Opening JSON file
fObj = open('data.json',)
第三步:加载文件对象
要加载文件对象,使用json.load()方法,并将文件对象传给该函数。json.load()方法返回字典:
# It returns JSON object as dictionary
ogdata = json.load(fObj)
print(ogdata)
data.json文件中充满了对象的数组,这意味着当我们将其转换为 Python 数据类型时,我们可以迭代字典并在控制台中逐一打印项目:
{'data': [{'color': 'red', 'value': '#f00'},
{'color': 'green', 'value': '#0f0'},
{'color': 'blue', 'value': '#00f'},
{'color': 'black', 'value': '#000'}
]
}
第四步:迭代字典数据
我们从json数据中得到了字典数据,现在我们可以迭代这些值,也就是字典的列表。为了迭代字典列表,使用**for循环** ,在控制台中一个一个地打印字典,然后关闭文件:
# app.py
import json
# Opening JSON file
fObj = open('data.json',)
# It returns JSON object as dictionary
ogdata = json.load(fObj)
# Iterating through the json list
for i in ogdata['data']:
print(i)
# Closing file
fObj.close()
如果你运行上述文件,那么你会看到下面的输出:
{'color': 'red', 'value': '#f00'}
{'color': 'green', 'value': '#0f0'}
{'color': 'blue', 'value': '#00f'}
{'color': 'black', 'value': '#000'}
你可以看到,我们打印了字典的列表。
结论
Python json.load()方法帮助我们从文本、JSON或二进制文件中读取JSON数据。load() 函数以字典的形式返回数据。