python读写json、格式化写入json文件
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
JSON在python中分别由list和dict组成。
这是用于序列化的两个模块:
- json: 用于字符串和python数据类型间进行转换
Json模块提供了四个功能:dumps、dump、loads、load - pickle: 用于python特有的类型和python的数据类型间进行转换
pickle模块提供了四个功能:dumps、dump、loads、load
json.dumps()把数据类型转换成字符串
json.dump()把数据类型转换成字符串并存储在文件中
json.loads()把字符串转换成数据类型
json.load()把文件打开从字符串转换成数据类型
json是可以在不同语言之间交换数据的,而pickle只在python之间使用。
json只能序列化最基本的数据类型,josn只能把常用的数据类型序列化(列表、字典、列表、字符串、数字、),比如日期格式、类对象!josn就不行了。而pickle可以序列化所有的数据类型,包括类,函数都可以序列化。
案例1 dumps
将python中的字典数据编码为 JSON字符串 字符串
1 import json
2
3 test_dict = {'one':1, 'two':{2.1:['a', 'b']}
4 print(test_dict)
5 print(type(test_dict))
6 #dumps 将数据转换成字符串
7 json_str = json.dumps(test_dict)
8 print(json_str)
9 print(type(json_str))
输出:
{'one':1, 'two':{2.1:['a', 'b']}
<class 'dict'>
{"one":1, "two":{2.1:["a", "b"]}
<class 'str'>
案例2 loads
用于解析JSON数据,返回python中的的字典数据类型
10 new_dict = json.loads(json_str)
11 print(new_dict)
12 print(type(new_dict))
输出:
{'one':1, 'two':{2.1:['a', 'b']}
<class 'dict'>
案例3 dump
:将python dict数据写入json文件中
1 with open("../config/record.json","w") as f:
2 json.dump(new_dict,f)
3 print("加载入文件完成...")
json文件内容:
1 {"one":1, "two":{2.1:["a", "b"]}
案例4 load
把文件打开,并把JSON字符串变换为python dict数据类型
1 with open("../config/record.json",'r') as load_f:
2 load_dict = json.load(load_f)
3 print(load_dict)
4 print(type(load_dict))
输出:
{'one':1, 'two':{2.1:['a', 'b']}
<class 'dict'>
案例5 格式化写入json文件
两种方法均可以实现:
1、将python字典数据用dumps()方法编码成JSON字符串,然后再写入json文件中
with open("../config/format_json.json", 'w') as write_f:write_f.write(json.dumps(load_dict, indent=4, ensure_ascii=False))
2、直接用dump()方法将python字典数据写入json文件中
with open("../config/format_json.json", 'w') as write_f:json.dump(load_dict, write_f, indent=4, ensure_ascii=False)
格式化写入json后,文件内容:
{'one': 1,'two': {2.1: ['a','b']}
}
python读写json、格式化写入json文件相关推荐
- python输出csv文件-Python之读取与写入CSV文件
原标题:Python之读取与写入CSV文件 本文作者:闫续文 文字编辑:张梦婷 技术总编:张学人 有问题,不要怕!访问 CSV(Comma-Separated Values)格式是电子表格和数据库最常 ...
- idea之json格式化插件Json Parser
idea之json格式化插件Json Parser 安装插件 安装后重启idea 使用插件 Json Parser 为啥要用Json Parser,别问你也可以不用,废话不说,自己品! 安装插件 安装 ...
- java导出json格式化的json文件及xml文件
场景 点击ztree树的节点,导出该节点下的所有子节点数据(要求:导出过程不跳转页面) 前端: <div id="rolesGroupmenu" class="ea ...
- c语言中json格式化输出,JSON格式化输出
JSON格式化输出 今天有个需求是对输出的JSON进行格式化 首先想到的就是jsBeautifier之类的小插件 搜索了一番看到有一位朋友回答JSON.stringify可以输出格式化的JSON字符串 ...
- csv java web 导入_DAY5-step9 使用CSV模块和Pandas在Python中读取和写入CSV文件
什么是CSV文件? CSV文件是一种纯文本文件,其使用特定的结构来排列表格数据. CSV是一种紧凑,简单且通用的数据交换通用格式. 许多在线服务允许其用户将网站中的表格数据导出到CSV文件中. CSV ...
- pythonpandas读取csv文件最后一行_简单小案例(一):使用Pandas在Python中读取和写入CSV文件...
前期文章链接: YOLOv3论文 https://arxiv.org/pdf/1804.02767.pdf 正文: 有许多方法可以在Python中读写CSV文件.有几种不同的方法,例如,您可以使用Py ...
- 用python的pandas打开csv文件_使用CSV模块和Pandas在Python中读取和写入CSV文件
什么是CSV文件? CSV文件是一种纯文本文件,其使用特定的结构来排列表格数据.CSV是一种紧凑,简单且通用的数据交换通用格式.许多在线服务允许其用户将网站中的表格数据导出到CSV文件中.CSV文件将 ...
- [转载] pythonpandas读取csv文件最后一行_简单小案例(一):使用Pandas在Python中读取和写入CSV文件...
参考链接: 使用Pandas在Python中读写CSV文件 前期文章链接: YOLOv3论文 https://arxiv.org/pdf/1804.02767.pdf 正文: 有许多方法可以在Pyth ...
- python入门文件读取与写入_初学者Python:读取和写入同一文件
每个打开的文件都有一个隐式指针,该指针指示将在何处读取和写入数据.通常,它默认为文件的开头,但是如果您使用a(追加)模式,则默认为文件的结尾.还值得注意的是,w即使您添加+到该模式,该模式也会截断您的 ...
最新文章
- 哥伦比亚大学AI实验室主任Hod Lipson:阻碍无人驾驶技术发展的7个误区
- selenium 中装饰器作用
- 阿里数学竞赛可以报名了!奖金增加到400万元,题目面向大众公开征集
- 25元、264KB内存的微处理器,树莓派官方出品,自带快速休眠模式
- All about OpenGL ES 2.x – (part 2/3)(转载)
- ubuntu下硬盘相关
- 转:【Python3网络爬虫开发实战】6.4-分析Ajax爬取今日头条街拍美图
- Linux 探索之旅 | 第五部分第七课:Shell 实现图片展示网页
- 基于51单片机ds18b20智能温控风扇Proteus仿真
- idea代码格式美化快捷键
- 巴比特 | 元宇宙每日必读:时薪100万,「虚拟主播」的吸金能力被证实,其背后的公司IPO申请获批...
- android简单点餐系统_微信点餐收银系统哪个好用?
- js原生下载excel(xlxs及xls格式)、word、png(图片格式)方法
- 微生物群-肠道-大脑轴:从运动到情绪
- Golang sort包Search函数源码分析
- Html HBuilder封装APP
- matlab矩阵变成行向量,matlab中将一个矩阵按照行拼成一个行向量应该怎么输?
- Excel-计算数列元素间的和差
- Zabbix监控平台部署+监控客户端
- v-model的基本使用