[[1, 2, 3], 123, 123.123, 'abc', {'key2': (4, 5, 6), 'key1': (1, 2, 3)}]
[[1, 2, 3], 123, 123.123, "abc", {"key2": [4, 5, 6], "key1": [1, 2, 3]}]
通过输出的结果可以看出,简单类型通过 encode 之后跟其原始的 repr()输出结果非常相
似,但是有些数据类型进行了改变,例如上例中的元组则转换为了列表。在json 的编码过
程中,会存在从 python 原始类型向 json 类型的转化过程,具体的转化对照如下:
json.dumps()方法返回了一个 str 对象 encodedjson,我们接下来在对 encodedjson 进
行 decode,得到原始数据,需要使用的 json.loads()函数:
1 decodejson
2 = json.loads(encodedjson)
3 print type(decodejson)
4 print decodejson[4]['key1']
print decodejson
输出:
<type 'list'>
[1, 2, 3]
[[1, 2, 3], 123, 123.123, u'abc', {u'key2': [4, 5, 6], u'key1': [1, 2, 3]}]
loads 方法返回了原始的对象,但是仍然发生了一些数据类型的转化。比如,上例中‘abc’
转化为了 unicode 类型。从 json 到 python 的类型转化对照如下:
评论0
最新资源