通过查看help(json.dump)和help(json.dumps)帮助信息,dump是将转换格式到文件对象,而dumps转换格式到字符串。

一、Json.dumps()

Json.dumps()将python对象转为json格式。

1、将列表转为json格式,

>>> l = [1,2,'abc',{'name':'bob','age':13}]
>>> json.dumps(l)
'[1, 2, "abc", {"age": 13, "name": "bob"}]'

2、将字典转为json

>>> d = {'b':None,'a':5,'c':'abc'}
>>> json.dumps(d)
'{"a": 5, "c": "abc", "b": null}'

转换后与转换前基本一致,但python的None要转为json的null

Json.dumps()转为json后的分隔符默认为’, ’或’: ’(逗号空格或冒号空格)。可以通过separators指定分隔符,去掉其中的空格,空格做为显示时好看一些,做传输时多传输了。

>>> json.dumps(l,separators=[',',':'])
'[1,2,"abc",{"age":13,"name":"bob"}]'

将转换结果排序使用 sort_keys参数

>>> json.dumps(d,sort_keys=True)
'{"a": 5, "b": null, "c": "abc"}'

二、将json格式数据转为python对象

两个函数为load()和loads()

>>> d2 = json.loads('{"a": 5, "c": "abc", "b": null}')
>>> d2
{u'a': 5, u'c': u'abc', u'b': None}

三dump和load对文件进行操作

>>> with open(r"C:\视频\python高效实践技巧笔记\6数据编码与处理相关话题\jsondemo.txt",'wb') as f:
json.dump(l, f)
json.dump(d, f)

>>> with open(r"C:\视频\python高效实践技巧笔记\6数据编码与处理相关话题\jsondemo2.txt",'w') as f:
json.dump(l, f)
json.dump(d, f)

6-2 如何读写json数据的更多相关文章

  1. C++解析Json,使用JsonCpp读写Json数据

    JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式.通常用于数据交换或存储. JsonCpp是一个基于C++语言的开源库,用于C++程序的J ...

  2. pythhon_如何读写json数据

    案例: 在web应用中常常用到json数据进行传输数据,本质上是字典类型数据转换成字符串,通过字符串进行网页传输,然后把接收到的字符串转换成字典类似数据 需求:实现字典转换成字符串,字符串转换成字典数 ...

  3. python 读写json数据

    json 模块提供了一种很简单的方式来编码和解码JSON 数据. 字符串操作 其中两个主要的函数是json.dumps() 和json.loads() ,要比其他序列化函数库如pickle 的接口少得 ...

  4. jquery-cookie插件怎么读写json数据

    需要先转换下jsonvar jsonStr = JSON.stringify(obj);把jsonStr存进cookie用的时候取出来 obj=JSON.parse(jsonStr);

  5. Spring MVC之JSON数据交互和RESTful的支持

    1.JSON概述 1.1 什么是JSON JSON(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式.它是基于JavaScript的一个子集,使用了C.C ...

  6. Android读写JSON格式的数据之JsonWriter和JsonReader

    近期的好几个月都没有搞Android编程了,逐渐的都忘却了一些东西.近期打算找一份Android的工作,要继续拾起曾经的东西.公司月初搬家之后就一直没有网络,直到今日公司才有网络接入,各部门才開始办公 ...

  7. [笔记] Python 中JSON数据的读写

    前言 JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换语言 JSON是独立于语言的文本格式, JSON 数据格式与语言无关 JSO ...

  8. 【spark】文件读写和JSON数据解析

    1.读文件 通过 sc.textFile(“file://") 方法来读取文件到rdd中. val lines = sc.textFile("file://")//文件地 ...

  9. 在JS和.NET中使用JSON (以及使用Linq to JSON定制JSON数据)

    转载原地址: http://www.cnblogs.com/mcgrady/archive/2013/06/08/3127781.html 阅读目录 JSON的两种结构 认识JSON字符串 在JS中如 ...

随机推荐

  1. clojure的delay future promise

    <Clojure编程>第4章笔记. 总的感觉,Clojure毕竟是基于JVM的在人间的工程化语言.不是纯的无状态纯函数的在神间的lisp. 作为后端语言,不可避免要处理计算中和代码执行时序 ...

  2. CUDA开发指南

    安装指南:https://blog.csdn.net/qilixuening/article/details/77503631 安装了anaconda不需要安装cuda和cudnn?:https:// ...

  3. 微信浏览器video播放视频踩坑

    video属性介绍 iOS的属性 playsinline On iPhone, video playsinline elements will now be allowed to play inlin ...

  4. serlvet操作数据库

    工具:eclipse 数据库工具:mysql java ee操作数据库,首先要导入数据库驱动文件,我用的是mysql 刚开始,很多人代码正确但是就是连接不上,原因就是忘了驱动文件的导入. 我的驱动文件 ...

  5. mysql 5.7 安装配置及无法启动的问题解决

    (用这篇配置就能正常配置成功) mysql 免安装版配置方法: https://www.jb51.net/article/134452.htm 参考:https://blog.csdn.net/qq_ ...

  6. 一、Appium+python环境搭建

    一.环境准备 1.jdk1.8. (64位) 2.android-sdk_r24.3.4-windows 3.python:2.7(3.6也可以) 4.appium:1.4.13.1 5.Node.j ...

  7. 解决samlexception-inresponsetofield-of-the-response-doesnt-correspond-to-sent-mess

    sp在校验samlresponse 根据id在session中的samlrequestid 取出,两者进行对比,这里如果做idp-init的话 可以注释掉. 1第一种方法 WebSSOProfileC ...

  8. 阶段3 1.Mybatis_10.JNDI扩展知识_3 补充-测试JNDI数据源的使用以及使用细节

    在webapp文件夹下新建目录META-INF 把context.xml文件复制过去. 拿资料里面的SqlMapConfig.xml文件 全部复制到项目的SqlMapConfig.xml里面来. ja ...

  9. 阶段3 1.Mybatis_07.Mybatis的连接池及事务_1 今日课程内容介绍

  10. 5.1.k8s.ConfigMap

    ConfigMap #ConfigMap用于保存配置数据的键值对,可用来保存单个属性,或配置文件 #ConfigMap创建 #使用yaml文件创建ConfigMap #cm-demo.yaml kin ...