IO编程_python

基础篇

1. IO编程

IO(Input/Output,输入输出),凡是用到数据交换的地方,都会涉及到IO,由IO引出一个Stream(流)的概念,分为:Input Stream(输入流)和Output Stream(输出流);“流”是水管,“数据”是水管中的水,但只能单向流,数据传输过程中需要架设2条水管,一个输入,一个输出,这样读写可以实现同步。
1 文件读写
①open函数
语法:open(name,mode,buffering)
参数解释:
name,打开的文件名,必填项;
mode,模式,可选项,默认是读模式;
buffering,缓冲区,可选项,默认缓冲区无;

试着读一个本地文件,我在E盘建立一个Github.txt文件,里面输入Hello,Hello,Hello!
然后试着读一读它;
在这里插入图片描述
红框里的是代码,黄框是读出的结果;

详解一下文件模式:

功能描述
r读模式
w写模式
a追加模式
b二进制模式(可添加到其他模式中使用)
+读/写模式(可添加到其他模式中使用)

备注:‘b’模式,一般处理文本文件不用,处理一些其他类型的二进制文件,比如mp3音乐或图像,需在模式参数中增加‘b’,在爬虫中处理媒体文件很常用,‘rb’可以读取一个二进制文件。

文件缓冲区:

功能描述
0I/O操作就是无缓冲区
1I/O操作就是有缓冲区,数据先写入内存里,只有使用flush函数或者close函数才会将数据写入到硬盘上;
>1的数缓冲区的大小,单位是字节,
<=-1的数默认缓冲区的大小

文件读取
:主要分为按字节读取和按行读取,常用的如下:

参数功能描述
read()一次性将文件内容全部读到内存中,最后返回是str类型的对象;
readlines()
close()文件使用后,必须关闭,防止会占用操作系统资源,影响系统的I/O操作。

由于文件操作可能会出现I/O异常,一旦出现异常,后面close()方法不会调用,可以用try… finally…

read()详解:
调用read()可一次性将内容读到内存,但文件过大,会导致内存不足的问题,针对文件过大,可以反复调用read(size),一次最多读取size个字节,如果是文本文件,可以调用readline()每次读取一行;调用readlines()一次读取所有内容并按行返回列表。

文件写入用write()方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值