Json&pickle模块

序列化

序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes

用于序列化的两个模块

  • json,用于字符串,和python数据类型间进行转换
  • pickle,用于python特有的类型和python的数据类型间的转换

Json模块提供了四个功能:dumps、dump、loads、load

pickle模块提供了四个功能:dumps、dump、loads、load

# 将数据通过特殊的形式转换为只有python语言认识的字符串
pickle.dumps(data)
# 将数据通过特殊的形式转换为只有python语言认识的字符串,并写入文件
with open('file','w') as fp
pickle.dump(data,fp)

json vs pickle:

JSON:

优点:跨语言、体积小

缺点:只能支持int\str\list\tuple\dict

Pickle:

优点:专为python设计,支持python所有的数据类型

缺点:只能在python中使用,存储数据占空间大

posted @ 2018-05-16 14:29  感动#心  阅读(124)  评论(0编辑  收藏  举报