Python数据存储:pickle模块的使用

一、用于序列化的两个模块
  json:用于字符串Python数据类型间进行转换
  pickle: 用于python特有的类型python的数据类型间进行转换
  json提供四个功能:dumps,dump(存入file),loads,load(从file读取)
  pickle提供四个功能:dumps,dump,loads,load

二、Pickle模块中常用函数

(1)pickle.dump(obj, file, [,protocol])

        函数的功能:将obj对象序列化存入已经打开的file中。

  • obj:想要序列化的obj对象。
  • file:文件名称。
  • protocol:序列化使用的协议。如果该项省略,则默认为0。如果为负值或HIGHEST_PROTOCOL,则使用最高的协议版本。
#dumps功能
import pickle
data = ['1','3','4']
#将data中python的特殊数据形式存为只有python语言认识的字符串
a = pickle.dumps(data)
print(a)

(2)pickle.load(file)

        函数的功能:将file中的对象序列化读出。

  • file:文件名称。
# loads功能
# 将pickle数据转换为python的数据结构
b = pickle.loads(a)
print(b)

(3)pickle.dumps(obj[, protocol])

  • 函数的功能:将obj对象序列化为string形式,而不是存入文件中。

  • obj:想要序列化的obj对象。
  • protocal:如果该项省略,则默认为0。如果为负值或HIGHEST_PROTOCOL,则使用最高的协议版本。
# dump功能
# dump 将数据通过特殊的形式转换为只有python语言认识的字符串,并写入文件
with open('D:/tmp.pk', 'w') as f:
     pickle.dump(data, f)

(4)pickle.loads(string)

       函数的功能:从string中读出序列化前的obj对象。

  • string:文件名称。
# load功能
# load 从数据文件中读取数据,并转换为python的数据结构
with open('D:/tmp.pk', 'r') as f:
     data = pickle.load(f)

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值