摘星星的同学

洞悉世界,分享精彩

JSON python下的基本应用

Encode Json

json.dump(obj, fp, 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数据流写入到文件中,传参为要写入文件的json obj 和文件路径;对象格式转换表:

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

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 的str 格式,参数的参数为python obj(python支持的数据类型);如果obj包含非ASCII码,那么转换后的str是包含非ASCII的Unicode 对象(instance)

实例:

>>> import json
>>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])
'["foo", {"bar": ["baz", null, 1.0, 2]}]'
>>> print json.dumps("\"foo\bar")
"\"foo\bar"
>>> print json.dumps(u'\u1234')
"\u1234"
>>> print json.dumps('\\')
"\\"
>>> print json.dumps({"c": 0, "b": 0, "a": 0}, sort_keys=True)
{"a": 0, "b": 0, "c": 0}
>>> from StringIO import StringIO
>>> io = StringIO()
>>> json.dump(['streaming API'], io)
>>> io.getvalue()
'["streaming API"]'

Decode Json

json.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
将包含Json对象的文件反序列化为python obj,注意参数为fp object;使用的转换表如下:
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
将Json文本中包含的str,unicode等json对象反序列化为python 对象,注意参数为json obj。

注意转换之间的不同:

Python 的list, tuple 转为Json的数组,但Json的数组只会转为Python 的list
Python 的str,unicode转为Json的string,但Json的string只会转为Python的Unicode
Python 的int,long,float之转为Json的number,但Json的numbe 如果是int会转为Python的int,或long,如果是real的才会转为Python的float

JSON Python
object dict
array list
string unicode
number (int) int, long
number (real) float
true True
false False
null None

实例

 >>> import json
 >>> json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')
 [u'foo', {u'bar': [u'baz', None, 1.0, 2]}]
 >>> json.loads('"\\"foo\\bar"')
 u'"foo\x08ar'
 >>> from StringIO import StringIO
 >>> io = StringIO('["streaming API"]')
 >>> json.load(io)
 [u'streaming API']

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/banrieen/article/details/80345581
想对作者说点什么? 我来说一句

json实现代码

2012年07月20日 1.21MB 下载

JSON基本jar包3个

2010年06月21日 256KB 下载

python samples

2009年01月21日 8KB 下载

没有更多推荐了,返回首页

不良信息举报

JSON python下的基本应用

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭