数据持久存储化(序列化,反序列话)

这个功能是让程序中的数据能持久性存储,后面学到数据库,可以存入。目前还没学到,就先存入文件。

如果只是存在数组,字典等数据结构,每次运行时,数据都是重新开始。


所谓的序列化,就是将数据存入文件中.反之,从文件读取数据为反序列化.

用上述方法需要导入pickle模块.

代码如下:

import pickle

#序列化

file_path = r"F:\python_example\abc.txt"

file1 = open(file_path,"wb") #用pickle,这里必须是以二进制进行读写

pickle.dump(r"111111",file1) #类似file1.write(r"111111".encode(encoding="utf-8")),这语句用utf-8编码,当read时需要用utf-8来解码.....但若dump写入进入就必须要用load进行解码,因为dump写入文件,开头会附带一些乱码,load语法会将其能正常的解开,若用read等方式,会读出前几个乱码.

file1.close()

#反序列化

file2 = open(file_path,"rb") #pickle,这里必须是以二进制进行读写

data = pickle.load(file2) #data = file2,read().decode(encoding="utf-8")若上述用utf-8进行编码,就写这语句

print(data)

file2.close()


若看不懂红色区域的文字,就忽略它.知道黑色代码和图就可以啦

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值