python标准库有pickle_Python标准库json模块和pickle模块使用详解

将python数据类型转换为其他代码格式叫做(序列化),而json就是在各个代码实现转换的中间件。

序列化要求:

1. 只能有int,str,bool,list,dict,tuple的类型支持序列化。

2. json序列化是以字符串形式出现。那么:lis= "[11,22,33]" 这样的也能称为序列化。

3. 必须将数据类型包裹在list或dict内进行转换。

4. json内部的str格式,必须以双引号来进行包裹。

5. bool值转换为小写的首字母

json.dumps

将py转换为json(序列化)格式的字符串 lis = [11,22,33]

json_lis = json.dumps(lis)

print(type(json_lis))

#

如果序列化时,存在中文,那么默认将会以unnicode类型转换。可以使用: v = [1,2,3,4,'哈哈']

data= json.dumps(v)

print(data)

#[1, 2, 3, 4, "\u54c8\u54c8"]

#################################

v = [1,2,3,4,'哈哈']

data= json.dumps(v,ensure_ascii=False)

print(data)

#[1, 2, 3, 4, "哈哈"]

将序列化格式字符串,反序列化为python文件格式。 lis = [11,22,33]

json_lis = json.dumps(lis)

lis_1 = json.loads(json_lis)

print(type(lis_1))

将序列化好的内容直接存放到一个文件内。load为直接读取文件内序列化的内容进行反序列化。 import json

v = [1,2,3,4,'哈哈']

with open('test.txt',mode='w',encoding='utf-8') as f:

json.dump(v,f,ensure_ascii=False)

pickle模块:

pickle的使用方式和json完全一样,需要注意的是:

1. pickle只支持python类型的转换,而json支持其他代码语言的转换。

2. pickle可以将python中所有数据类型进行转换,而json不能转换元组(转换成列表)和集合,而且必须套到列表或字典中。

3. json序列化后的类型为字符串类型,而pickle所序列化的类型为bytes类型。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值