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实现QQ游戏大家来找茬辅助工具
Sep 14 Python
Python接收Gmail新邮件并发送到gtalk的方法
Mar 10 Python
Python smallseg分词用法实例分析
May 28 Python
Python实现二叉堆
Feb 03 Python
Python切片知识解析
Mar 06 Python
Python 实现随机数详解及实例代码
Apr 15 Python
Python中的groupby分组功能的实例代码
Jul 11 Python
安装好Pycharm后如何配置Python解释器简易教程
Jun 28 Python
详解Matplotlib绘图之属性设置
Aug 23 Python
Django media static外部访问Django中的图片设置教程
Apr 07 Python
Django跨域请求原理及实现代码
Nov 14 Python
让文件路径提取变得更简单的Python Path库
May 27 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 auth_http类库进行身份效验
2009/03/19 PHP
ThinkPHP实现批量删除数据的代码实例
2014/07/02 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
php编程每天必学之表单验证
2016/03/01 PHP
thinkphp3.x中display方法及show方法的用法实例
2016/05/19 PHP
PHP new static 和 new self详解
2017/02/19 PHP
php出租房数据管理及搜索页面
2017/05/23 PHP
javascript操作select元素实例分析
2015/03/27 Javascript
浅谈js构造函数的方法与原型prototype
2016/07/04 Javascript
全面理解闭包机制
2016/07/11 Javascript
深入浅出ES6之let和const命令
2016/08/25 Javascript
CSS3 media queries结合jQuery实现响应式导航
2016/09/30 Javascript
jQuery extend()详解及简单实例
2017/05/06 jQuery
vue2.0 中#$emit,$on的使用详解
2017/06/07 Javascript
关于JavaScript语句后面的分号问题
2017/12/07 Javascript
基于Swiper实现移动端页面图片轮播效果
2017/12/28 Javascript
vue使用vue-i18n实现国际化的实现代码
2018/04/08 Javascript
Vue2.2.0+新特性整理及注意事项
2018/08/22 Javascript
vue debug 二种方法
2018/09/16 Javascript
4个顶级开源JavaScript图表库
2018/09/29 Javascript
vue实现简单跑马灯效果
2020/05/25 Javascript
在Python中使用HTMLParser解析HTML的教程
2015/04/29 Python
python 3.6.4 安装配置方法图文教程
2018/09/18 Python
通过python检测字符串的字母
2020/02/18 Python
python+opencv3生成一个自定义纯色图教程
2020/02/19 Python
解决Django响应JsonResponse返回json格式数据报错问题
2020/08/09 Python
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
俄罗斯化妆品和香水网上商店:Iledebeaute
2019/01/03 全球购物
面试后的感谢信范文
2014/02/01 职场文书
置业顾问岗位职责
2014/03/02 职场文书
文明城市标语
2014/06/16 职场文书
幼儿园保育员责任书
2014/07/22 职场文书
四风问题对照检查材料
2014/09/22 职场文书
教师党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
七年级思品教学反思
2016/02/20 职场文书
MongoDB日志切割的三种方式总结
2021/09/15 MongoDB