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的web.py框架下的application.py模块
May 02 Python
Python求两个文本文件以行为单位的交集、并集与差集的方法
Jun 17 Python
python 网络编程详解及简单实例
Apr 25 Python
Python MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
python编程培训 python培训靠谱吗
Jan 17 Python
python爬取网页转换为PDF文件
Jun 07 Python
在pyqt5中QLineEdit里面的内容回车发送的实例
Jun 21 Python
python对文件目录的操作方法实例总结
Jun 24 Python
python中列表的切片与修改知识点总结
Jul 23 Python
python中enumerate() 与zip()函数的使用比较实例分析
Sep 03 Python
如何通过命令行进入python
Jul 06 Python
Python中threading库实现线程锁与释放锁
Python中Cookies导出某站用户数据的方法
May 17 #Python
Python 高级库15 个让新手爱不释手(推荐)
Python带你从浅入深探究Tuple(基础篇)
May 15 #Python
Python中zipfile压缩包模块的使用
python 制作一个gui界面的翻译工具
pyqt5打包成exe可执行文件的方法
You might like
?生?D片??C字串
2006/12/06 PHP
php入门学习知识点五 关于php数组的几个基本操作
2011/07/14 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
求解开jscript.encode代码的asp函数
2007/02/28 Javascript
innerText 使用示例
2014/01/23 Javascript
对js关键字命名的疑问介绍
2014/04/25 Javascript
js实现多选项切换导航菜单的方法
2015/02/06 Javascript
手机端页面rem宽度自适应脚本
2015/05/20 Javascript
Javascript获取随机数的实现方法
2016/06/22 Javascript
浅析Javascript的自动分号插入(ASI)机制
2016/09/29 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
移动开发之自适应手机屏幕宽度
2016/11/23 Javascript
用vue和node写的简易购物车实现
2017/04/25 Javascript
详解windows下vue-cli及webpack 构建网站(二)导入bootstrap样式
2017/06/17 Javascript
vue.js实现条件渲染的实例代码
2017/06/22 Javascript
Vue+webpack+Element 兼容问题总结(小结)
2018/08/16 Javascript
vue组件之间通信实例总结(点赞功能)
2018/12/05 Javascript
vue不操作dom实现图片轮播的示例代码
2019/12/18 Javascript
[46:00]Ti4 冒泡赛第二轮LGD vs C9 2
2014/07/14 DOTA
python求质数的3种方法
2018/09/28 Python
Python实现的统计文章单词次数功能示例
2019/07/08 Python
django使用django-apscheduler 实现定时任务的例子
2019/07/20 Python
Django 创建新App及其常用命令的实现方法
2019/08/04 Python
使用tensorflow框架在Colab上跑通猫狗识别代码
2020/04/26 Python
CSS3实现莲花绽放的动画效果
2020/11/06 HTML / CSS
家乐福台湾线上购物网:Carrefour台湾
2020/09/15 全球购物
社团活动策划书范文
2014/01/09 职场文书
护士自我评价
2014/02/01 职场文书
科技节口号
2014/06/19 职场文书
商务考察邀请函模板
2015/02/02 职场文书
个人年终总结范文
2015/03/09 职场文书
2015年法制宣传月活动总结
2015/03/26 职场文书
文化大革命观后感
2015/06/17 职场文书
学生会宣传部竞选稿
2015/11/21 职场文书
Matplotlib可视化之添加让统计图变得简单易懂的注释
2021/06/11 Python
Sql Server之数据类型详解
2022/02/28 SQL Server