文件操作
语法:open(filename, mode)
filename:文件的路径
mode:打开的方式
基本步骤
- 打开文件
- 读、写文件
- 关闭文件
基本操作
open()函数:创建一个file对象,默认以只读的方式打开
read方法:可以一次性读取文件的所有内容
write方法:将指定内容写入文件
close方法:关闭文件
file对象的属性
file.name:返回文件的名称
file.mode:返回文件的访问模式
file.closed:判断文件是否关闭,关闭返回True,否则返回False
访问模式
r:只读模式(默认);文件必须存在
w:只写模式,不存在则创建,存在则重写
+:表示可以同时读写某个文件
r+:可读写文件,文件不存在则抛出异常
w+:先写再读
a:追加模式,不存在则创建,存在则追加内容
open(文件的路径名,访问模式)
- 例:在F盘的”文件操作“的文件夹下创建一个“text.txt”记事本
- 在Day12.py中读取“text.txt”记事本
read(num)
read(num):num表示从文件中读取的数据长度,如果没有传入num值,默认读取所有内容
- 例:在与Day12.py的相同目录下创建text.py记事本文件
读取 text.py记事本文件
写入文件
输出的结果为空,是因为写入的时候光标在文件内容后面,读取不到内容
a:追加内容
tell和seek
tell方法:显示文件内光标的当前位置
seek方法:改变当前文件内光标的位置
seek(offset,from):
- offset:表示要移动的字节数
- from:表示要移动字节数的参考位置,0代表将文件的开头作为参考位置;1代表使用当前位置;2代表以文件结尾作为参考位置
- seek(0,0):会将光标移到文件夹的开头
with open和编码格式
格式:with open(文件名,访问模式,encoding=‘utf-8’)
with open:代码执行完,系统会自动调用f.close()方法
encoding表示编码集. 根据文件的实际保存编码进行获取数据, 对于我们而言,使用更多的是utf-8。
读取操作
readline:一次读取一行内容,方法执行完,会把文件指针移动到下一行,准备再次读取
readlines:按照行的方式把文件内容一次性读取,返回的是一个列表,每一行的数据就是一个元素