6-2 如何读写json数据

通过查看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数据的更多相关文章
- C++解析Json,使用JsonCpp读写Json数据
JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式.通常用于数据交换或存储. JsonCpp是一个基于C++语言的开源库,用于C++程序的J ...
- pythhon_如何读写json数据
案例: 在web应用中常常用到json数据进行传输数据,本质上是字典类型数据转换成字符串,通过字符串进行网页传输,然后把接收到的字符串转换成字典类似数据 需求:实现字典转换成字符串,字符串转换成字典数 ...
- python 读写json数据
json 模块提供了一种很简单的方式来编码和解码JSON 数据. 字符串操作 其中两个主要的函数是json.dumps() 和json.loads() ,要比其他序列化函数库如pickle 的接口少得 ...
- jquery-cookie插件怎么读写json数据
需要先转换下jsonvar jsonStr = JSON.stringify(obj);把jsonStr存进cookie用的时候取出来 obj=JSON.parse(jsonStr);
- Spring MVC之JSON数据交互和RESTful的支持
1.JSON概述 1.1 什么是JSON JSON(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式.它是基于JavaScript的一个子集,使用了C.C ...
- Android读写JSON格式的数据之JsonWriter和JsonReader
近期的好几个月都没有搞Android编程了,逐渐的都忘却了一些东西.近期打算找一份Android的工作,要继续拾起曾经的东西.公司月初搬家之后就一直没有网络,直到今日公司才有网络接入,各部门才開始办公 ...
- [笔记] Python 中JSON数据的读写
前言 JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换语言 JSON是独立于语言的文本格式, JSON 数据格式与语言无关 JSO ...
- 【spark】文件读写和JSON数据解析
1.读文件 通过 sc.textFile(“file://") 方法来读取文件到rdd中. val lines = sc.textFile("file://")//文件地 ...
- 在JS和.NET中使用JSON (以及使用Linq to JSON定制JSON数据)
转载原地址: http://www.cnblogs.com/mcgrady/archive/2013/06/08/3127781.html 阅读目录 JSON的两种结构 认识JSON字符串 在JS中如 ...
随机推荐
- 可持久化Trie模板
如果你了解过 01 Trie 和 可持久化线段树(例如 : 主席树 ).那么就比较好去可持久化 Trie 可持久化 Trie 当 01 Trie 用的时候能很方便解决一些原本 01 Trie 不能解决 ...
- POJ 1573 Robot Motion(模拟)
题目代号:POJ 1573 题目链接:http://poj.org/problem?id=1573 Language: Default Robot Motion Time Limit: 1000MS ...
- [design pattern](5) Factory Method
前言 在前面一章博主介绍了简单工厂模式(Simple Factory),接着上面的章节,今天博主就来介绍下工厂方法模式(Factory Method). 思考题 首先,让我们来思考下面的问题: 在上一 ...
- DVWA--XSS(DOM)
0X01爱之先了解 DOM,全称Document Object Model,是一个平台和语言都中立的接口,可以使程序和脚本能够动态访问和更新文档的内容.结构以及样式. DOM型XSS其实是一种特殊类型 ...
- MySQL中concat以及group_concat的使用
摘自:https://www.jianshu.com/p/43cb4c5d33c1 说明: 本文中使用的例子均在下面的数据库表tt2下执行: 一.concat()函数 1.功能:将多个字符串连接成一个 ...
- 微服务SpringCloud系列
https://my.oschina.net/hmilyylimh?tab=newest&catalogId=5703366
- 分布式工作流任务调度系统Easy Scheduler正式开源
分布式工作流任务调度系统Easy Scheduler正式开源 1.背景 在多位技术小伙伴的努力下,经过近2年的研发迭代.内部业务剥离及重构,也经历一批种子用户试用一段时间后,EasyScheduler ...
- 1443:【例题4】Addition Chains
1443:[例题4]Addition Chains 题解 注释在代码里 注意优化搜索顺序以及最优化剪枝 代码 #include<iostream> #include<cstdio&g ...
- 3、Shiro授权
Shiro授权过程和认证过程相似: 项目结构: package com.shiro.shiroframe; import org.apache.shiro.SecurityUtils; import ...
- oracle中awr性能报告阅读笔记
1.对于数据库运行的业务不太了解,那么awr性能报告中最需要关注的是Top 5 Timed Foreground Events和Time Model Statistics两个部分