下面是关于JSON文件及Python对JSON文件的读写操作的完整攻略。
什么是JSON文件?
JSON是JavaScript Object Notation的缩写,用于数据的格式化和交换。它是一种文本格式,通常用于web应用程序之间的数据传输。JSON文件是一个包含JSON数据的文件,在Python中可以通过内置的json模块读写JSON文件。
JSON数据格式包括对象、数组、数字、字符串、布尔值和null值等,可以自由组合。下面是一个JSON格式的例子:
{
"name": "Alice",
"age": 25,
"isMarried": true,
"hobbies": ["reading", "running", "traveling"],
"address": {
"country": "USA",
"city": "New York",
"street": "Broadway"
}
}
Python对JSON文件的读写操作
在Python中,要读取JSON文件,需要使用json模块中的方法。具体步骤如下:
读取JSON文件
import json
# 读取JSON文件
with open("example.json", "r") as f:
data = json.load(f)
# 打印JSON数据
print(data)
json.load()
方法用于读取JSON文件并解析其中的数据。读取后的数据类型为Python字典或列表,可以像操作Python字典一样进行操作。
写入JSON文件
import json
# 写入JSON文件
data = {"name": "Bob", "age": 30}
with open("example.json", "w") as f:
json.dump(data, f)
json.dump()
方法用于将Python字典或列表转化为JSON格式,并写入到JSON文件中。
示例说明
接下来展示两个实例来说明Python对JSON文件的读写操作。
示例1
首先,创建一个example.json文件,内容如下所示:
{
"name": "Alice",
"age": 25,
"isMarried": true,
"hobbies": ["reading", "running", "traveling"],
"address": {
"country": "USA",
"city": "New York",
"street": "Broadway"
}
}
然后,使用Python代码读取该JSON文件,并修改其中的内容:
import json
# 读取JSON文件
with open("example.json", "r") as f:
data = json.load(f)
# 修改JSON数据
data["age"] = 26
data["hobbies"].append("swimming")
# 写入JSON文件
with open("example.json", "w") as f:
json.dump(data, f)
# 打印JSON数据
print(data)
运行结果如下所示:
{
"name": "Alice",
"age": 26,
"isMarried": true,
"hobbies": ["reading", "running", "traveling", "swimming"],
"address": {
"country": "USA",
"city": "New York",
"street": "Broadway"
}
}
可以看到,使用json.load()方法读取JSON文件后,我们可以像操作Python字典一样对数据进行修改。修改完成后,使用json.dump()方法将修改后的数据写入JSON文件。
示例2
接下来,我们展示如何将Python字典转换为JSON字符串:
import json
# 将字典转换为JSON字符串
data = {"name": "Bob", "age": 30}
json_str = json.dumps(data)
# 打印JSON字符串
print(json_str)
# 将JSON字符串转换为Python字典
new_data = json.loads(json_str)
# 打印Python字典
print(new_data)
运行结果如下所示:
{"name": "Bob", "age": 30}
{'name': 'Bob', 'age': 30}
使用json.dumps()方法将Python字典转换为JSON字符串,使用json.loads()方法将JSON字符串转换为Python字典。这两个方法常用于web应用程序之间的数据传输。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JSON文件及Python对JSON文件的读写操作 - Python技术站