内容简介:Python3中我们利用内置模块我们利用示例结果:
Python3中我们利用内置模块 json
解码和编码 JSON对象
,JSON(JavaScript Object Notation)是指定 RFC 7159(废弃了RFC 4627)和 ECMA-404是一种轻量级数据交换格式,受 JavaScript对象文字语法的启发 (虽然它不是JavaScript 1的严格子集)。下面为 Python 对象-->JSON对象的对照关系表。
Python | JSON |
---|---|
dict | object |
list, tuple | array |
str, unicode | string |
int, long, float | number |
True | true |
False | false |
None | null |
dumps编码
我们利用 dumps
将Python对象编码为 JSON对象
,当然 dumps
只完成了序列化为str,而 dump
必须传文件描述符,将序列化的str保存到文件中,它们的函数定义为 dumps(obj, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw)
dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw)
编码字典
import json D = {'one': 1, 'two': 2, 'three': 3} J = json.dumps(D) print(J) 复制代码
示例结果:
{"one": 1, "two": 2, "three": 3} 复制代码
编码列表
import json L = [1, 'Python ', {'one': 1, 'two': 2, 'three': 3}, ''] J = json.dumps(L) print(J) 复制代码
示例结果:
[1, "Python ", {"one": 1, "two": 2, "three": 3}, ""] 复制代码
编码
import json S = 'Python' J = json.dumps(S) print(J) 复制代码
示例结果:
"Python" 复制代码
格式化输出JSON
import json L = [1, 'Python ', {'one': 1, 'two': 2, 'three': 3}, True] J = json.dumps(L, sort_keys=True, indent=4) print(J) 复制代码
示例结果:
[ 1, "Python ", { "one": 1, "three": 3, "two": 2 }, true ] 复制代码
loads解码
我们利用 loads
用于解码 JSON对象
。解码结果即与之对应的 Python对象
类型。当然 loads
只完成了反序列化, load
只接收文件描述符,完成读取文件和反序列化。它们的函数定义为 loads(s, *, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
load(fp, *, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
比如我们用来解码上个示例的数据
import json jsondata = ''' [ 1, "Python ", { "one": 1, "three": 3, "two": 2 }, true ] ''' J = json.loads(jsondata) print(type(J)) print(J) 复制代码
示例结果:
<class 'list'> [1, 'Python ', {'one': 1, 'three': 3, 'two': 2}, True] 复制代码
可以看到我们成功对上个例子中的JSON对象进行了解码,并且最终的解码结果为Python列表对象类型,符合Python对象-JSON对象对照表的结果。
以上所述就是小编给大家介绍的《Python3内置模块之json编解码方法小结》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Netty-解码器架构与常用解码器
- Glide 缓存与解码复用
- 音频解码 Audio Converter
- golang之Json编码解码
- 解码器 与 编码器
- WeIdentity 源码分析 | 狗哥解码(一)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Reversing
艾拉姆(Eilam,E.) / 韩琪、杨艳、王玉英、李娜 / 电子工业出版社 / 2007-9 / 79.00元
本书描述的是在逆向与反逆向之间展开的一场旷日持久的拉锯战。作者Eldad Eilam以一个解说人的身份为我们详尽地评述了双方使用的每一招每一式的优点与不足。 书中包含的主要内容有:操作系统的逆向工程;.NET平台上的逆向工程;逆向未公开的文件格式和网络协议;逆向工程的合法性问题;拷贝保护和数字版权管理技术的逆向工程;防止别人对你的代码实施逆向工程的各种技术;恶意程序的逆向工程;反编译器的基本......一起来看看 《Reversing》 这本书的介绍吧!