一、文件读写方法
1.读取内容:
read(size):
读取指定大小的数据,如果不指定size,则读取整个文件。
data = file.read(100) # 读取前100字节
readline():
读取一行。
line = file.readline() # 返回单行字符串
readlines():
读取所有行并返回一个列表。
lines = file.readlines() # 如: [“line1
“, “line2
“]
2. 写入内容:
write(string):
将字符串写入文件。
file.write(“Hello, Python!
“)
writelines(lines):
将字符串列表写入文件(不会自动添加换行,需要自己添加)。
lines = [“Line 1
“, “Line 2
“]
file.writelines(lines)

二、文件指针操作:
1.获取当前位置
tell():
返回当前文件指针的位置。
position = file.tell() # 返回当前指针位置(字节数)
2.移动指针
seek(offset, whence):
移动文件指针。whence参数可以是0(文件开头,默认)、1(当前位置)、2(文件末尾)。
file.seek(0) # 移动到文件开头
file.seek(10, 0) # 从开头偏移10字节
file.seek(-5, 1) # 从当前位置向前移5字节
file.seek(0, 2) # 移动到文件末尾

三、 文件编码处理
处理不同编码:在打开文本文件时,可以通过encoding参数指定编码(如'utf-8')。如果不指定,将使用系统默认编码。
指定编码(常见于文本文件):
with open(“file.txt”, “r”, encoding=”utf-8″) as f:
content = f.read()
常见编码:”utf-8″(推荐)、”gbk”、”latin-1″
四、二进制文件操作
图片视频等都是以二进制方式存储,需要用“rb”的方式读取文件。
# 复制图片(二进制模式)
with open(“input.jpg”, “rb”) as src, open(“output.jpg”, “wb”) as dst:
dst.write(src.read())

五、异常处理
try:
with open(“missing.txt”, “r”) as f:
print(f.read())
except FileNotFoundError:
print(“文件不存在!”)
except IOError as e:
print(f”I/O 错误: {e}”)



37