您当前的位置:首页 > 计算机 > 编程开发 > Python

Python json文件常用操作

时间:12-11来源:作者:点击数:
CDSY,CDSY.XYZ

Json 即JavaScript Object Notation, 是一种常用的轻量级的文本数据交换格式, json数据格式简单, 易于读写。

1、Json基本语法规则

Json中有两种常用的数据结构, 对象、数组。其中:

对象是由 "{}" 保存的无序的名称/值对集合, 名称与值之间用 ":", 名称/值对之间用 "," 分隔,如{ "name" : "school", "url" : "www.baidu.com" },

数组是由 "[]" 保存的值有序集合, 值与值之间用 "," 分隔,如[ "site1": "baidu", "site2" : "music", "www" ],

json数组中的值可以是字符串(string)、数值(number)、true、false、 null、 对象(object)或者数组(array)以及它们的嵌套。

json文件有以下几点规范:

1) 数据保存在 "名称/值" 的键值对中;

2)数据之间用 "," 分隔, 数组或者对象(字典)的最后一个成员后不能加",";

3)"\" 表示转义字符,用 "{}" 表示对象,用 "[]" 表示数组。

2、Python中json文件的四种常用操作

1) json.dump() :将Python对象序列化为json格式的数据流并写入文件类型的对象中

import json

dic = {
        "student" : 
        [
            {"name" : "xlh",

            "time" : "09:04"}
        ]
    }
with open('./dic.json', mode='w', encoding='utf-8') as f:
    json.dump(dic, f)

2) json.dumps() :将Python对象序列化为json格式的字符串

import json

dic = {
        "student" : 
        [
            {"name" : "xlh",

            "time" : "09:04"}
        ]
    }
data = json.dumps(dic)

print("转换为json前的数据类型为:\n{} \n转换之后数据类型为: {}".format(type(dic), type(data)))

>>>
<class 'dict'> 
<class 'str'>

3) json.load() : 从josn文件对象中读取json格式的数据并反序列化成Python对象

import json

with open('./dic.json', encoding='utf-8') as f:
    data = json.load(f)
    print("读取json文件数据为:\n{}\n数据类型为: {}".format(data, type(data)))

>>>
读取json文件数据为:
{'student': [{'name': 'xlh', 'time': '09:04'}]} 

数据类型为: <class 'dict'>

4) json.loads() 将包含json格式数据的字符串反序列化成Python对象

import json

s = '{"name": "cdbe", "data": 10, "des": "json"}'
data = json.loads(s)
print("读取json字符串:\n{}\n数据类型为: {}".format(data, type(data)))

>>>
读取json字符串:
{'name': 'cdbe', 'data': 10, 'des': 'json'} 

数据类型为: <class 'dict'>
CDSY,CDSY.XYZ
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐