python:json文件的保存与读取

 

介绍

json(JavaScript Object Notation, Java 脚本对象表示符)是一种特殊的数据格式,具有以下优点。

  • (1)该数据格式独立于脚本语言(如c++,python,matlab等),可以被各种脚本语言调用,便于数据的跨语言调用。
  • (2)该数据格式将数据序列化,便于机器的解析、生成、传输,有利于提升数据的传输速率。json只能把常用的数据类型序列化,如 数字、字符串、列表、字典 等。

python 中的 json 模块

python中有一个专门的 json 模块。

import json

python中的 json 模块包含四个功能: dumps,dump, loads,load.

解析json数据:

  • json.dumps: 将python对象编码成json字符串
  • json.loads:将已编码的json字符串解码为python对象
data = {'name':'0.jpg','weight':50,'height':50}#dict类型
json_data = json.dumps(data)#str类型
data_ = json.loads(json_data)#dict类型

 解析json文件

  • json.dump: 将python对象编码成json文件
  • json.load:将已编码的json文件解码为python对象
#生成json文件
data = {'name':'0.jpg','weight':50,'height':50}
with open("./news_json.json","w") as f:
     json.dump(data,f)
     print("已生成news_json.json文件...")

#读取json文件
jsonPath = './news_json.json'
with open(jsonPath,'r') as f:
    data=json.load(f)
print(data)

 

python中json数据的保存与读取(函数)

我把json数据的保存与读取整理成了简单的函数,如下:

import json

def save_json(save_path,data):
    assert save_path.split('.')[-1] == 'json'
    with open(save_path,'w') as file:
        json.dump(data,file)

def load_json(file_path):
    assert file_path.split('.')[-1] == 'json'
    with open(file_path,'r') as file:
        data = json.load(file)
    return data

# 测试
data = {'name':'0.jpg','weight':50,'height':50}

# 保存为json文件
save_json("./data.json",data)
# 从json 文件加载数据
data_load = load_json("./data.json")

# 打印保存与加载的数据
print(data)
print(data_load)

参考:

python解析json数据及json文件

Python读写json文件的简单实现

 

你可能感兴趣的:(python:json文件的保存与读取)