Python学习笔记07—IO流和对象序列化

一、I0流
定义 :
IO流主要说的是计算机的输入输出操作。但是在python里的IO流主要指的是内存和磁盘之间的数据流动。
在python中,以内存为参照,将IO流分为输入流和输出流。

python中IO流的操作—open函数
open函数的主要功能是打开本地文件

open函数的参数
1、file
表示要打开文件的路径,打开当前目录下的文件时可以不写路径。

2、mode

a.open("b.txt",mode="r")
a.read()     #默认read(size=-1),表示读到文件的末尾。 
a.open("b.txt",mode="w")
a.write("要写入的内容")   #会覆盖掉原数据。
a.open("b.txt",mode="x")   #创建一个b.txt文件并以mode="r"的方式打开
a.write("要追加的内容")   #不会覆盖掉原数据。
a.open("b.txt",mode="a")
a.write("要追加的内容")   #不会覆盖掉原数据。
a.open("b.txt",mode="t")   #以字符流的形式打开文件(默认)
a.open("b.txt",mode="b")   #以字节流的形式打开文件
a.open("b.txt",mode="+")   #mode="+" 等同于mode="r" + mode="w"

4、flush()
刷新缓存区,使更改生效。在每次执行close的时候会自动执行fiush()

a.flush()

3、close()
关闭IO流

a.close()

注:IO流在使用时会占用内存资源,所以在使用完成后需要立马关闭。

二、对象序列化
将内存中的对象转换成字节或字符数据的过程。

1、pickle-将对象转化为字节数据
首先要进行导包import pickle

pickle.dumps(对象)   #将对象转换成字节数据(序列化)
pickle.loads(对象)    #将二进制数据转换为对象(反序列化)

2、json-将对象转化为字符数据(建议对字典对象进行转化)

json.dumps(对象)   #将对象转换成字符数据(序列化)
json.loads(对象)    #将字符数据转换对象(反序列化)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值