Python json模块

JSON(JavaScript Object Notation)是javascript对象表示法,它是一种基于文本,轻量级数据交换格式,

JSON有两种表示结构,一种是对象结构,一种是数组结构。
对象结构以{键:值}的形式表示,类似于字典的形式。

例如:
{1:{"city_id":01,"city_name":"北京","area":["城东区","城南区"]},2:{"city_id":2,"city_name":"上海","area":["浦东区","朝阳区"]}
}数组结构以[元素1,元素2,元素3]的形式表示。
例如:
[   {"red":1,"blue":2,"green":3},{"apple":8,"banana":6}
]

  

在Python中,提供json库来创建和解析json数据
json函数:
json.dumps() 将Python对象编码成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)

json.loads() 将已编码的json字符串解码为Python对象

语法格式:

json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])

Python与json转化对照表:

Python                 json
dict                object
list、tuple          array
str、unicode         string
int、long、float              number
True                true
False               false
None                null

  

以下是Python创建json数据的实例

import json dist_1=[["a",1],["b",{"q":2,"w":6,"e":4,"r":3}]]json_1=json.dumps(dist_1)
print json_1
运行结果:
[["a", 1], ["b", {"q": 2, "r": 3, "e": 4, "w": 6}]]
[Finished in 0.3s][格式化数据]
#-*-encoding:utf-8-*-
import json dist_city={1:{"city_id":01,"city_name":"北京","area":["城东区","城南区"]},2:{"city_id":2,"city_name":"上海","area":["浦东区","朝阳区"]}
}
print dist_city#格式化输出json数据
json_city=json.dumps(dist_city,sort_keys=True,indent=4)
print json_city运行结果:
{1: {'city_id': 1, 'city_name': '\xe5\x8c\x97\xe4\xba\xac', 'area': ['\xe5\x9f\x8e\xe4\xb8\x9c\xe5\x8c\xba', '\xe5\x9f\x8e\xe5\x8d\x97\xe5\x8c\xba']}, 2: {'city_id': 2, 'city_name': '\xe4\xb8\x8a\xe6\xb5\xb7', 'area': ['\xe6\xb5\xa6\xe4\xb8\x9c\xe5\x8c\xba', '\xe6\x9c\x9d\xe9\x98\xb3\xe5\x8c\xba']}}
{    #格式化后的json数据"1": {"area": ["\u57ce\u4e1c\u533a", "\u57ce\u5357\u533a"], "city_id": 1, "city_name": "\u5317\u4eac"}, "2": {"area": ["\u6d66\u4e1c\u533a", "\u671d\u9633\u533a"], "city_id": 2, "city_name": "\u4e0a\u6d77"}
}
[Finished in 0.3s][压缩]dist_1=[["a",1],["b",{"q":2,"w":6,"e":4,"r":3}]]
json_1=json.dumps(dist_1)
print "压缩前数据:%d" %(len(json_1))
#压缩
json_2=json.dumps(dist_1,separators=(",",":"))
print "压缩后数据:%d" %(len(json_2))
运行结果:
压缩前数据:51
压缩后数据:41
[Finished in 0.2s]loads函数
#-*-encoding:utf-8-*-
import json dist_1=[["a",1],["b",{"q":2,"w":6,"e":4,"r":3}]]
json_1=json.dumps(dist_1,indent=4,sort_keys=True,separators=(",",":"))
print json_1
json_2=json.loads(json_1)  #将json格式转换为Python关系的格式
print json_2
运行结果:
[["a",1],["b",{"e":4,"q":2,"r":3,"w":6}]
]
[[u'a', 1], [u'b', {u'q': 2, u'r': 3, u'e': 4, u'w': 6}]]
[Finished in 0.2s]

  

转载于:https://www.cnblogs.com/JcHome/p/10177284.html

python json数据格式相关推荐

  1. python json数据格式数组内元素递增赋值_利用Python实现JSON格式数据的编码与解码操作...

    导读 JSON (全称:JavaScript Object Notation )是一种轻量级的数据交换格式,所谓的轻量级,是与 XML 数据结构相比而言的,在描述相同的数据下,JSON 所需的字符比X ...

  2. python json数据格式数组内元素递增赋值_python深浅复制,类型转换, json操作,数组操作...

    python深浅复制 import copy a = [1, 2, 3, 4, ['a', 'b']] #原始对象 b = a #赋值,传对象的引用 c = copy.copy(a) #对象拷贝,浅拷 ...

  3. python——json数据格式的转换

    json:是一种轻量级的数据交互格式, 采用完全独立于编程语言的文本格式来存储和表示数据(就是字符串) Python语言使用JSON有很大优势,因为:JSON无非就是一个单独的字典或一个内部元素都是字 ...

  4. Python中json自定义jsonschema进行json数据格式校验

    一.python中jsonschma库 python中有时候我们想对json数据进行键值对(key,value)数据的数据格式进行校验,因为数据类型不符合业务逻辑会导致业务逻辑代码执行报错,这时候我们 ...

  5. Python中json数据格式转换

    json数据格式(良好的中转数据格式) JSON是一种轻量级的数据交互格式.可以按照JSON指定的格式去组织和封装数据 JSON本质上是一种带有特定格式的字符串 **JSON的主要功能:**json就 ...

  6. 上手python之json数据格式

    json数据格式 什么是json JSON是一种轻量级的数据交互格式.可以按照JSON指定的格式去组织和封装数据 JSON本质上是一个带有特定格式的字符串 主要功能:json就是一种在各个编程语言中流 ...

  7. [转载] 包含对象的json格式_如何把JSON数据格式转换为Python的类对象?

    参考链接: python json 12: numpy转换为json数据 JOSN字符串转换为自定义类实例对象 有时候我们有这种需求就是把一个JSON字符串转换为一个具体的Python类的实例,比如你 ...

  8. Python Json存储与读取

    前言 Python 中的文件数据存储和读取可以说是非常方便了,这里记录一下 JSon 数据的存储和读取,需要用到的模块就是 json,该模块能够将简单的 Python 数据结构转储到文件中,并在程序再 ...

  9. python json模块

    JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式.JSON的数据格式其实就是python里面的字典格式,里面可以包含方括号括起来的数组,也 ...

  10. python json模块 超级详解

    JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式.JSON的数据格式其实就是python里面的字典格式,里面可以包含方括号括起来的数组,也 ...

最新文章

  1. 孙立岩 python-basic: 用于学习python基础的课件(一二三四)
  2. html5复选框样式,11种炫酷CSS3复选框checkbox样式美化效果
  3. 产品 电信nb接口调用_电信NB-IoT云平台数据对接方案——唐山平升电子技术开发有限公司...
  4. 用户登陆_「python学习笔记」用户登陆需求实现(for/if/str知识点)
  5. 在腾讯做嵌入式是怎么样的
  6. Epic Games 携精彩作品强势登录 GMGC 2016
  7. python能做页面加载动画吗_HTML+CSS实现页面加载(loading)动画效果
  8. openpyxl 列 插入_openpyxl 基本使用
  9. 春节前后,太原将举办多种展览演出
  10. Android【报错】Description Resource Path Location Type AndroidManifest.xml file missing!
  11. ocr 哪个好 外文_5 款堪称神器的高质量软件,每一款都好用到不想卸载
  12. java格式化数字 NumberFormat及DecimalFormat
  13. 如何安装浏览器广告拦截屏蔽的插件?
  14. MATLAB-插值算法汇总
  15. 多媒体数字互动技术的应用有哪些?
  16. c#利用GUID生成随机码
  17. 删除所有奇数顺序表c语言,如何删除列表中的所有奇数序数项?
  18. 数学基础----标准方差
  19. 苹果cms时尚大气电影网站源码
  20. 有没有国内或者香港的服务器带宽在1gbps以上的?为什么看过的服务器基本带宽都是5M以下的?

热门文章

  1. python实现完整的特征工程,实践论文中的分类模型和方法用于恶意页面的分类与识别
  2. rasa 中文 UnsupportedLanguageError: component ‘LanguageModelTokenizer‘ does not support language ‘zh‘.
  3. java接口的关键字_java关键字-interface
  4. 捕捉动物游戏java代码_Java Swing打猎射击游戏源码
  5. at shutdown 不起作用_at胎是什么胎
  6. C++ std::enable_shared_from_this
  7. openssh升级sftp_linux搭建sftp(openssh)
  8. java练手小程序_Java小程序练习
  9. Leetcode122. 买卖股票的最佳时机 II(贪心)
  10. java统计字符串数字出现次数_java实现统计字符串中大写字母,小写字母及数字出现次数的方法示例...