13、文件操作

一、概念

1、“管道”:文件对象,有具体操作

二、操作模式

1、r:文件不存在则报错、指针放在文件开头

2、w:文件不存在会创建新文件、指针放在文件开头,比如多从调用f.write(“str”)会覆盖原来内容(完全覆盖式写入)

3、a:文件不存在会创建新文件、追加(只写)形式,指针放在文件结尾

4、增加b:rb、wb、ab,上述操作以二进制形式,比如使用图片视频音乐

5、增加+:r+、w+、a+、rb+、wb+、ab+六种模式,+为以读写形式打开 ,特性几乎不变

        w+:原来为完全覆盖式写入,现在为部分覆盖式写入。若打开文件进行了多次操作,指针也会随之移动     

三、定位

1、f.tell()确定文件指针的位置

2、f.seek(偏移量,位置)相对某个位置增加偏移量,对于位置0(开头),1(当前位置),2(文本结尾),以文本文件打开只能为0

四、读

1、f.read(读取长度)从指针位置开始读

2、f.readline()从指针位置开始一排一排读

3、f.readlines()从指针位置开始多排读,加上换行符一起将整体读出,传回列表一行为一个元素

4、for in可以遍历文件对象,一行一行的迭代(文件对象拥有和迭代器一样的特性)

5、判定可读的容错处理:f.readable()提升健壮性

6、文件很大节约内存使用2和4相当于迭代器的优点,文件小使用1和3速度快性能好

五、写入

1、f.write(“内容”)返回写入字节长度

2、判定可写容错处理:f.writeable()提升健壮性

六、关闭

1、释放系统资源

2、写入时会将数据先放到缓冲区中区,close会立即清空缓冲区数据内容到磁盘文件中

3、f.flush()立即刷新缓冲区数据

七、其他操作

1、import os模块:rename();renames();remove();rmdir();removedirs();mksdir()

2、重命名:os.rename(srt,dtr)修改单级;os.renames(old,new)修改多级;

3、删除

        删除文件:os.remove("文件路径");

        删除目录(只能删除非空目录):os.rmdir(path)不能递归删除只能删除一个;os.removedirs(path)可递归删除可删除多级目录;

4、创建文件夹:os.mksir(“文件名称”),不可递归创建

5、 获取当前目录:os.getcwd()

6、改变当前文件目录位置os.chdir(文件路径)

7、获取文件夹下的目录内容以列表返回os.listdir(文件名称)

8、"./"当前目录;"../"上一节目录;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值