在Python中,文件操作(如读取和写入文件)是一个常见的任务。Python标准库提供了内置的函数和上下文管理器来简化文件操作。以下是处理文件操作的一些基本方法和示例:
打开和关闭文件
使用open()函数打开文件。该函数返回一个文件对象。完成操作后,应使用close()方法关闭文件,但更推荐使用with语句来自动处理文件的打开和关闭。
# 使用 open() 打开文件并读取内容
file = open('example.txt', 'r')  # 以只读模式打开文件
content = file.read()  # 读取文件内容
print(content)
file.close()  # 关闭文件
使用 with 语句
with语句可以确保文件在处理完毕后正确关闭,即使发生异常。
# 使用 with 语句打开文件
with open('example.txt', 'r') as file:content = file.read()  # 读取文件内容print(content)
# 文件会在退出 with 块时自动关闭
文件读取操作
-  读取整个文件内容: with open('example.txt', 'r') as file:content = file.read()print(content)
-  逐行读取文件: with open('example.txt', 'r') as file:for line in file:print(line.strip()) # strip() 用于去除每行末尾的换行符
-  读取固定大小的内容: with open('example.txt', 'r') as file:while True:chunk = file.read(1024) # 读取 1024 字节if not chunk:breakprint(chunk)
-  使用 readline() 逐行读取: with open('example.txt', 'r') as file:line = file.readline()while line:print(line.strip())line = file.readline()
-  读取所有行到列表中: with open('example.txt', 'r') as file:lines = file.readlines()for line in lines:print(line.strip())
文件写入操作
-  覆盖写入文件: with open('output.txt', 'w') as file:file.write('Hello, World!\n')file.write('This is a new line.\n')
-  追加写入文件: with open('output.txt', 'a') as file:file.write('This line is appended.\n')
-  逐行写入列表内容: lines = ['First line', 'Second line', 'Third line'] with open('output.txt', 'w') as file:for line in lines:file.write(line + '\n')
二进制文件操作
-  读取二进制文件: with open('image.jpg', 'rb') as file: # 以二进制模式读取文件data = file.read()print(data)
-  写入二进制文件: with open('copy.jpg', 'wb') as file: # 以二进制模式写入文件file.write(data)
文件操作常见错误处理
-  捕获文件操作异常: try:with open('nonexistent_file.txt', 'r') as file:content = file.read() except FileNotFoundError:print("File not found.") except IOError:print("An I/O error occurred.")
示例
复制文件
def copy_file(src, dest):try:with open(src, 'rb') as src_file:data = src_file.read()with open(dest, 'wb') as dest_file:dest_file.write(data)print(f"File {src} copied to {dest}.")except IOError as e:print(f"Error occurred: {e}")copy_file('example.txt', 'example_copy.txt')
总结
Python提供了简单而强大的文件操作功能,通过使用内置的open()函数和with语句,可以轻松、安全地进行文件读写操作。同时,Python的异常处理机制使得处理文件操作中的错误更加方便。