文件的读取一般使用的三个方法
1.read([size])
从文件中读取size个字符,并作为结果返回。如果没有size参数,则读取整个文件。读取到文件末尾,会返回空字符串。
2.readline()
读取一行内容作为结果返回,读取到文件末尾,会返回空字符串。
3.readlines()
文本文件中,每一行作为一个字符串存入列表中,返回该列表
【操作例子】读取一个文件前4个字符
with open(r'bb.txt','r',encoding='utf-8') as f:
print(f.read(4))
【操作例子】文件较小,一次将文件内容读入到程序中
with open(r'bb.txt','r',encoding='utf-8') as f:
print(f.read())
【操作例子】按行读取一个文件
with open(r'bb.txt','r',encoding='utf-8') as f:
while True:
fragment=f.readline()
if not fragment:
break
else:
print(fragment,end='')
【操作例子】使用迭代器(每次返回一行)读取文本文件
with open(r'bb.txt','r',encoding='utf-8') as f:
for a in f:
print(a,end="")
文件对象的常用属性和方法
文件对象封装了文件相关的操作,以下我们详细列出文件对象的常用属性和方法。
文件对象的属性
属性
说明
name
返回文件的名字
mode
返回文件的打开模式
closed
若文件被关闭则返回Ture
文件对象打开模式
模式
说明
r
读模式
w
写模式
a
追加模式
b
二进制模式(可与其他模式组合)
+
读写模式(可以与其他模式组合)
文件对象的常用方法
方法名
说明
read([size])
从文件中读取size个字节或字符的内容返回,若省略[size],则读取到文件末尾,即一次读取文件所有文件
readine()
从文本文件中读取一行内容
readines()
把文本文件中每一行都作为独立的字符串对象,并将这些对象放入列表返回。
write(str)
将字符串str内容写入文件
writelines(s)
将字符串列表s写入文本文件,不添加换行符
seek(offset,[,whencel])
把文件指针移动到新的位置,offset表示相对于whence的多少个字节的偏移量:
offset:off为正往结束方向移动,为负往开始方法移动
whence:不同的值代表不同含义
0:从文件头开始计数(默认值)
1:从当前位置计算
2:从文件尾开始计算
tell()
返回文件指针的当前位置
truncatep([size])
不论指针在什么位置,只留下指针前size个字节的内容,其余全部删除。
如果没有传入size,则当前位置到文件末尾内容全部删除
flush()
把缓冲区的内容写入到文件,但不关闭文件
close()
把缓冲区内容写入文件,同时关闭文件,释放文件对象相关资源
【操作例子】
with open("bb.txt","r",encoding="utf-8") as f:
print("文件名是:{}".format(f.name)) #打印文件名
print(f.tell()) #打印当前指针位置
print(“读取文件内容:{}”.format(f.readline()) #读一行内容
print(f.tell()) #打印读取后的指针位置
f.seek(2) #指针位置从当前位置向后移动两个字节
print(“读取文件内容:{}”.format(f.readline()) #读一行内容