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 相关文章推荐
Python3实现的腾讯微博自动发帖小工具
Nov 11 Python
django 删除数据库表后重新同步的方法
May 27 Python
python一键去抖音视频水印工具
Sep 14 Python
解决pycharm运行时interpreter为空的问题
Oct 29 Python
用Python中的turtle模块画图两只小羊方法
Apr 09 Python
Python3多目标赋值及共享引用注意事项
May 27 Python
python批量解压zip文件的方法
Aug 20 Python
Win10下python 2.7与python 3.7双环境安装教程图解
Oct 12 Python
Python Django框架模板渲染功能示例
Nov 08 Python
Python3 filecmp模块测试比较文件原理解析
Mar 23 Python
Python用类实现扑克牌发牌的示例代码
Jun 01 Python
Python ckeditor富文本编辑器代码实例解析
Jun 22 Python
Python中threading库实现线程锁与释放锁
Python中Cookies导出某站用户数据的方法
May 17 #Python
Python 高级库15 个让新手爱不释手(推荐)
Python带你从浅入深探究Tuple(基础篇)
May 15 #Python
Python中zipfile压缩包模块的使用
python 制作一个gui界面的翻译工具
pyqt5打包成exe可执行文件的方法
You might like
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
繁体中文转换为简体中文的PHP函数
2006/10/09 PHP
php 多关键字 高亮显示实现代码
2012/04/23 PHP
ThinkPHP CURD方法之limit方法详解
2014/06/18 PHP
php源码分析之DZX1.5随机数函数random用法
2015/06/17 PHP
PHP 实现的将图片转换为TXT
2015/10/21 PHP
PHP检测链接是否存在的代码实例分享
2016/05/06 PHP
laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析
2019/12/20 PHP
通过JAVAScript实现页面自适应
2007/01/19 Javascript
JS Range HTML文档/文字内容选中、库及应用介绍
2011/05/12 Javascript
javascript设计模式--策略模式之输入验证
2015/11/27 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
BootStrap实现响应式布局导航栏折叠隐藏效果(在小屏幕、手机屏幕浏览时自动折叠隐藏)
2016/11/30 Javascript
Vue2单一事件管理组件通信
2017/05/09 Javascript
React Native react-navigation 导航使用详解
2017/12/01 Javascript
vue debug 二种方法
2018/09/16 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
2018/11/12 jQuery
Js跳出两级循环方法代码实例
2020/09/22 Javascript
Python采用Django制作简易的知乎日报API
2016/08/03 Python
Python进阶-函数默认参数(详解)
2017/05/18 Python
python处理csv数据动态显示曲线实例代码
2018/01/23 Python
详解python的四种内置数据结构
2019/03/19 Python
Python 存取npy格式数据实例
2020/07/01 Python
利用Python优雅的登录校园网
2020/10/21 Python
Html5自定义字体解决方法
2019/10/09 HTML / CSS
英国婚礼商城:Wedding Mall
2019/11/02 全球购物
怎样比较两个类型为String的字符串
2016/08/17 面试题
大学同学聚会邀请函
2014/01/19 职场文书
会计专业大学生求职信范文
2014/01/28 职场文书
2014年银行柜员工作总结
2014/11/12 职场文书
避暑山庄导游词
2015/02/04 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
2016年大学生实习单位评语
2015/12/01 职场文书
2016年“12.4”法制宣传日活动总结
2016/04/01 职场文书
JS的深浅复制详细
2021/10/16 Javascript
浅谈MySql update会锁定哪些范围的数据
2022/06/25 MySQL