Python中json.dumps()函数的使用解析


Posted in Python onMay 17, 2021

json.dumps将一个Python数据结构转换为JSON

import json
data = {
    'name' : 'myname',
    'age' : 100,
}
json_str = json.dumps(data)

json库的一些用法

 

方法 作用
json.dumps() 将python对象编码成Json字符串
json.loads() 将Json字符串解码成python对象
json.dump() 将python中的对象转化成json储存到文件中
json.load() 将文件中的json的格式转化成python对象提取

json.dump()和json.dumps()的区别

  • json.dumps() 是把python对象转换成json对象的一个过程,生成的是字符串。
  • json.dump() 是把python对象转换成json对象生成一个fp的文件流,和文件相关。

json参数

json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
  • obj:转化成json的对象。
  • sort_keys =True:是告诉编码器按照字典排序(a到z)输出。如果是字典类型的python对象,就把关键字按照字典排序。
  • indent:参数根据数据格式缩进显示,读起来更加清晰。
  • separators:是分隔符的意思,参数意思分别为不同dict项之间的分隔符和dict项内key和value之间的分隔符,把:和,后面的空格都除去了。
import json

x = {'name':'你猜','age':19,'city':'四川'}
#用dumps将python编码成json字符串
y = json.dumps(x)
print(y)
i = json.dumps(x,separators=(',',':'))
print(i)
# 输出结果
{"name": "\u4f60\u731c", "age": 19, "city": "\u56db\u5ddd"}
{"name":"\u4f60\u731c","age":19,"city":"\u56db\u5ddd"}
  • skipkeys:默认值是False,如果dict的keys内的数据不是python的基本类型(str,unicode,int,long,float,bool,None),设置为False时,就会报TypeError的错误。此时设置成True,则会跳过这类key 。
  • ensure_ascii=True:默认输出ASCLL码,如果把这个该成False,就可以输出中文。
  • check_circular:如果check_circular为false,则跳过对容器类型的循环引用检查,循环引用将导致溢出错误(或更糟的情况)。
  • allow_nan:如果allow_nan为假,则ValueError将序列化超出范围的浮点值(nan、inf、-inf),严格遵守JSON规范,而不是使用JavaScript等价值(nan、Infinity、-Infinity)。
  • default:default(obj)是一个函数,它应该返回一个可序列化的obj版本或引发类型错误。默认值只会引发类型错误。

json中的dump和dumps的区别

json.dumps()用于将python对象转换为json字符串,返回转换后的json字符串

import json

#将python对象转换为json字符串
persons = [
    {
        'username': "zhaoji",
        "age": "18",
        "country": "China"
    },
    {
        "username": "cyj",
        "age": "18",
        "country": "China"
    }
]
#调用dumps方法转换python对象
json_str = json.dumps(persons)
#打印转换后的json字符串的数据类型
print(type(json_str))
#打印转换后的json字符串
print(json_str)

输出结果为
<class ‘str'>
[{“username”: “zhaoji”, “age”: “18”, “country”: “China”}, {“username”: “cyj”, “age”: “18”, “country”: “China”}]

Process finished with exit code 0

json.dump()用于将python对象转换为字符串并且写入文件

import json

#将python对象转换为json字符串
persons = [
    {
        'username': "zhaoji",
        "age": "18",
        "country": "China"
    },
    {
        "username": "cyj",
        "age": "18",
        "country": "China"
    }
]
with open("./data/j1.json", "w") as fp:
    json.dump(persons, fp)

fp.close()

写入文件为
[{“username”: “zhaoji”, “age”: “18”, “country”: “China”}, {“username”: “cyj”, “age”: “18”, “country”: “China”}]

到此这篇关于Python中json.dumps()函数的使用解析的文章就介绍到这了,更多相关Python json.dumps() 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
讲解Python中的递归函数
Apr 27 Python
基于Python的接口测试框架实例
Nov 04 Python
pandas中Timestamp类用法详解
Dec 11 Python
Python自定义一个类实现字典dict功能的方法
Jan 19 Python
python中的 zip函数详解及用法举例
Feb 16 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
Mar 23 Python
python中upper是做什么用的
Jul 20 Python
python 常见的排序算法实现汇总
Aug 21 Python
利用Python实现朋友圈中的九宫格图片效果
Sep 03 Python
Python实现EM算法实例代码
Oct 04 Python
python修改微信和支付宝步数的示例代码
Oct 12 Python
python某漫画app逆向
Mar 31 Python
Python中threading库实现线程锁与释放锁
Python中Cookies导出某站用户数据的方法
May 17 #Python
Python 高级库15 个让新手爱不释手(推荐)
Python带你从浅入深探究Tuple(基础篇)
May 15 #Python
Python中zipfile压缩包模块的使用
python 制作一个gui界面的翻译工具
pyqt5打包成exe可执行文件的方法
You might like
PHP中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
PHP实现数组向任意位置插入,删除,替换数据操作示例
2019/04/05 PHP
php7 错误处理机制修改实例分析
2020/05/25 PHP
用jscript实现列出安装的软件列表
2007/06/18 Javascript
javascript 跳转代码集合
2009/12/03 Javascript
基于mootools 1.3框架下的图片滑动效果代码
2011/04/22 Javascript
用jQuery实现的智能隐藏、滑动效果的返回顶部代码
2014/03/18 Javascript
angularJS提交表单(form)
2015/02/09 Javascript
JavaScript判断前缀、后缀是否是空格的方法
2015/04/15 Javascript
jQuery实现表格展开与折叠的方法
2015/05/04 Javascript
js实现Form栏显示全格式时间时钟效果代码
2015/08/19 Javascript
JQuery核心函数是什么及使用方法介绍
2016/05/03 Javascript
ES10 特性的完整指南小结
2019/03/04 Javascript
如何使用proxy实现一个简单完整的MVVM库的示例代码
2019/09/17 Javascript
JS通用方法触发点击事件代码实例
2020/02/17 Javascript
python格式化字符串实例总结
2014/09/28 Python
python检测远程服务器tcp端口的方法
2015/03/14 Python
Python学习教程之常用的内置函数大全
2017/07/14 Python
在IPython中进行Python程序执行时间的测量方法
2018/11/01 Python
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
2019/05/13 Python
PyQt5.6+pycharm配置以及pyinstaller生成exe(小白教程)
2020/06/02 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
2020/06/02 Python
Python用SSH连接到网络设备
2021/02/18 Python
css3学习系列之移动属性详解
2017/07/04 HTML / CSS
在canvas上实现元素图片镜像翻转动画效果的方法
2018/03/20 HTML / CSS
Doyoueven官网:澳大利亚健身服饰和配饰品牌
2019/03/24 全球购物
Java基础面试题
2012/11/02 面试题
黄河象教学反思
2014/02/10 职场文书
《蜗牛》教学反思
2014/02/18 职场文书
社会稳定风险评估方案
2014/06/02 职场文书
学习雷锋精神活动总结
2015/02/06 职场文书
优秀教师个人总结
2015/02/11 职场文书
新学期感想
2015/08/10 职场文书
Redis批量生成数据的实现
2022/06/05 Redis
MySQL索引失效场景及解决方案
2022/07/23 MySQL