python的I/O流

1、io流的定义

定义:io流主要是指计算机输入和输出的操作

2、io流的操作

io流主要是通过open全局函数进行操作

2.1、open全局函数的用法

其中参数含义为

file:文件路径(必选参数)

mode:文件的打开方式 (可选参数),

其中常用的参数有:t(文本模式),r(只读模式),w(打开一个文件写入,若文件不存在创建并写入),x(新建一个文件并写入,若文件已存在会报错),a(打开一个文件并追加写入),b(二进制模式),+(打开一个文件进行更新,可读可写)等。未补充完全的可通过python终端import io导入io流模块,并dir(io)查看方法,help(open)查看open剩余mode参数

encoding:字符编码集(一般使用utf-8)

errors:报错级别

newline:区分换行符

closefd:传入的file参数类型

opener:设置自定义开启器,开启器的返回值必须是一个打开的文件描述符。

2.2、文件操作

在对文件进行一系列的操作后一定要及时的对文件进行关流的动作,以保证对文件的操作得到反映

file.close()关闭文件,关闭文件后不能再进行读写操作

file.flush()刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。

file.read(size)在操作一些大文件是不建议一次性读取,而是从文件读取指定的字节数,如果未给定或为负则读取所有。

3、io流的分类

io流的分类根据流动的方向分为输入流与输出流,输入流与输出流的判别依据是根据相对与保存位置进行的一系列操作而判断流是流入与流出。

io流还根据数据类型分为字符流与字节流,字节流主要是用于储存图片、视频等。

4、对象序列化

列表、字典、集合和元组都是抽象的概念,需要把对象持久化操作,所以需要序列化
是把对象这种抽象的概念持久化到磁盘上。

将对象序列化为字节数据采用pickle

用法参考import pickle模块,dir(pickle)。其中dumps是将对象序列化为字节数据,loads将字节数据反序列化为字节数据。另外,dump是将对象序列化并保存进文件,load是将文件中字节数据反序列化为对象。

 

 

将对象序列化为字符数据采用json

用法参考import json模块,dir(json)。其中dumps是将对象序列化为字符数据,loads将字符数据反序列化为字符数据。dump是将对象序列化为字符数据并存入文件中,load将文件中的字符数据反序列化为对象。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值