文件对象常用方法和属性
原创...大约 2 分钟
文件对象封装了文件相关的操作。在前面我们学习了通过文件对象对文件进行读写操作。本节我们详细列出文件对象的常用属性和方法,并进行说明。
文件对象的属性
属性 | 说明 |
---|---|
name | 返回文件的名字 |
mode | 返回文件的打开模式 |
closed | 若文件被关闭, 则返回 True |
文件对象的打开模式
模式 | 说明 |
---|---|
r | 读模式 |
w | 写模式 |
a | 追加模式 |
b | 二进制模式(可与其他模式组合) |
+ | 读写模式(可以其他模式组合) |
文件对象的常用方法
方法名 | 说明 |
---|---|
read([size]) | 从文件中读取 size 个字节或字符的内容返回。若省略[size],则读取到文件末尾,即一次读取文件所有内容 |
readline() | 从文本文件中读取一行内容 |
readlines() | 把文本文件中每一行都作为独立的字符串对象,并将这些对象放入列表返回 |
write(str) | 将字符串 str 内容写入文件 |
writelines(s) | 将字符串列表 s 写入文件文件,不添加换行符 |
seek(offset [,whence]) | 把文件指针移动到新的位置,offset 表示相对于 whence 的多少个字节的偏移量;offset:off 为正往结束方向移动,为负往开始方向移动 whence 不同的值代表不同含义:0: 从文件头开始计算(默认值)1:从当前位置开始计算 2:从文件尾开始计算 |
tell() | 返回文件指针的当前位置 |
truncate([size]) | 不论指针在什么位置,只留下指针前 size 个字节的内容,其余全部删除;如果没有传入 size,则当指针当前位置到文件末尾内容全部删除 |
flush() | 把缓冲区的内容写入文件,但不关闭文件 |
close() | 把缓冲区内容写入文件,同时关闭文件,释放文件对象相关资源 |
# a.txt的内容是:abcefghljklmn
with open("a.txt", "r", encoding="utf-8") as f:
print("文件名是:{0}".format(f.name)) # 文件名是:e.txt
print(f.tell()) # 0
print("读取的内容:{0}".format(str(f.readline()))) # 读取的内容:abcdefghijklmn
print(f.tell()) # 14
f.seek(3, 0)
print("读取的内容:{0}".format(str(f.readline()))) # 读取的内容:defghijklmn
Powered by Waline v2.15.7