📅  最后修改于: 2023-12-03 15:06:31.678000             🧑  作者: Mango
JSON是一种轻量级的数据交换格式,它易于阅读和编写,并且语法类似于Python中的字典和列表。在Python中,我们可以使用内置的json模块来读取和写入JSON数据。本文将介绍如何从JSON文件中提取数据并在Python中使用。
首先,我们需要使用Python的内置json模块读取JSON文件。假设我们有一个名为data.json的JSON文件,其内容如下:
{
"name": "John",
"age": 30,
"city": "New York"
}
我们可以使用以下代码读取JSON文件并将其转换为Python字典:
import json
# 打开JSON文件
with open('data.json') as f:
data = json.load(f)
# 打印JSON转换后的Python字典
print(data)
输出结果为:
{'name': 'John', 'age': 30, 'city': 'New York'}
现在我们已经成功读取了JSON文件并将其转换为Python字典对象。
接下来,我们可以通过Python字典对象中的键访问JSON数据。假设我们想要访问JSON对象中的“name”键,可以使用以下代码:
# 访问键'name'
name = data['name']
print(name)
输出结果为:
John
类似地,我们可以使用相同的语法访问“age”和“city”键:
# 访问键'age'
age = data['age']
print(age)
# 访问键'city'
city = data['city']
print(city)
以上代码将提取JSON文件中的“age”和“city”键,并将其赋值给变量age和city。
JSON数据还可以包含数组。假设我们有一个名为data.json的JSON文件,其内容如下:
{
"fruits": ["apple", "banana", "orange"],
"people": [
{"name": "John", "age": 30},
{"name": "Lisa", "age": 25},
{"name": "Bob", "age": 40}
]
}
我们可以使用以下代码读取JSON文件并将其转换为Python字典:
import json
# 打开JSON文件
with open('data.json') as f:
data = json.load(f)
# 打印JSON转换后的Python字典
print(data)
输出结果为:
{'fruits': ['apple', 'banana', 'orange'], 'people': [{'name': 'John', 'age': 30}, {'name': 'Lisa', 'age': 25}, {'name': 'Bob', 'age': 40}]}
现在我们已经成功读取了JSON文件并将其转换为Python字典对象,接下来访问“fruits”和“people”数组:
# 访问键'fruits'
fruits = data['fruits']
print(fruits)
# 访问键'people'
people = data['people']
print(people)
我们可以看到,fruits和people都是Python列表对象,分别包含了JSON数组中的所有元素。接下来,我们可以使用Python循环迭代JSON数组中的每个元素:
# 迭代fruits列表
for fruit in fruits:
print(fruit)
# 迭代people列表
for person in people:
name = person['name']
age = person['age']
print(f'{name} is {age} years old.')
以上代码将分别迭代fruits列表和people列表,并输出它们的每个元素或键值对。
在Python中从JSON文件中提取数据是一项重要的技能。通过使用Python的内置json模块,我们可以轻松地将JSON文件转换为Python字典或列表,并在Python中访问和迭代JSON数据。