python Json
2015-12-25 16:50
585 查看
JSON
如果我们要在不同的编程语言之间传递对象,就必须把对象序列化为标准格式,比如XML,但更好的方法是序列化为JSON,因为JSON表示出来就是一个字符串,可以被所有语言读取,也可以方便地存储到磁盘或者通过网络传输。JSON不仅是标准格式,并且比XML更快,而且可以直接在Web页面中读取,非常方便。JSON表示的对象就是标准的JavaScript语言的对象,JSON和Python内置的数据类型对应如下:
JSON类型 | Python类型 |
{} | dict |
[] | list |
"string" | 'str'或u'unicode' |
1234.56 | int或float |
true/false | True/False |
null | None |
json模块提供了非常完善的Python对象到JSON格式的转换。我们先看看如何把Python对象变成一个JSON
import json
d = dict(name = 'chenguang', age = 23, score = 87)
json.dumps(d)
'{"age": 23, "score": 87, "name": "chenguang"}'
dumps()方法返回一个
str,内容就是标准的JSON。类似的,
dump()方法可以直接把JSON写入一个
file-like Object。
要把JSON反序列化为Python对象,用
loads()或者对应的
load()方法,前者把JSON的字符串反序列化,后者从
file-like Object中读取字符串并反序列化:
json_str = '{"age": 23, "score": 87, "name": "chenguang"}'
json.loads(json_str)
{u'age': 23, u'score': 87, u'name': u'chenguang'}
有一点需要注意,就是反序列化得到的所有字符串对象默认都是
unicode而不是
str。由于JSON标准规定JSON编码是UTF-8,所以我们总是能正确地在Python的
str或
unicode与JSON的字符串之间转换。
未完待续。。。
相关文章推荐
- splinter webdriver API 的基本实现
- 通过Python调用OpenStack 的RESTful API
- 下载Python库win32com的地址
- python time模块
- python知识收集
- python 序列化
- 笨方法学Python(1-5)
- python入门之数据类型
- Python -- 两个列表的差集、并集和交集
- python知识-本地获取数据
- python version 2.7 required,which was not found in the registry
- 一段代码让你学会Python (借鉴)
- 2016马哥教育--Python3.0实战培训班重磅来袭
- Python标准库01 正则表达式 (re包)
- Python操作MySQL数据库
- python面试题
- 找零钱之美分 python
- Python的groupby
- python 上下文管理器
- python中的urlencode与urldecode