本文摘自php中文网,作者不言,侵删。
本篇文章给大家带来的内容是关于python中json序列化的详细分析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。之所以写这个因为自己总是弄混了,容易弄错,记下来有事没事看看
序列化是指把变量从内存中变成可存储或传输的过程称之为序列化用(使用dump或者dumps),把变量内容从序列化的对象重新读到
内存里称之为反序列化(使用load或者loads)
如果我们要在不同的编程语言之间传递对象,就必须把对象序列化为标准格式,比如XML,但更好的方法是序列化为JSON,因为JSON
表示出来就是一个字符串,可以被所有语言读取,也可以方便地存储到磁盘或者通过网络传输。JSON不仅是标准格式,并且比XML更快,
而且可以直接在Web页面中读取,非常方便
JSON和Python内置的数据类型对应如下:
dumps()方法返回一个str,内容就是标准的JSON。类似的,dump()方法可以直接把JSON写入一个file_Object。要把JSON反序列化为
Python对象,用loads()或者对应的load()方法,前者把JSON的字符串反序列化,后者从file_Object中读取字符串并反序列化
实例
dumps序列化一个对象
1 2 3 |
|
#dumps:序列化一个对象 sort_keys:根据key排序 indent:以4个空格缩进,输出阅读友好型 ensure_ascii: 可以序列化非ascii码(中文等)
dump:将一个对象序列化存入文件
dump()的第一个参数是要序列化的对象,第二个参数是打开的文件句柄 注意打开文件时加上以UTF-8编码打开
1 2 |
|
运行此文件之后在统计目录下会有一个data.json文件
反序列化
load:从一个打开的文件句柄加载数据,注意打开的文件编码
1 2 3 |
|
loads: 从一个对象加载数据
1 2 |
|
不加ensure_ascii=False 结果是
加入ensure_ascii=False
1 2 |
|
1 2 |
|
以上就是python中json序列化的详细分析的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
更多相关阅读请进入《Python》频道 >>

Python编程 从入门到实践 第2版
python入门书籍,非常畅销,超高好评,python官方公认好书。