Python 打开与关闭文件

1. 简介

这个教程将会深入地解释如何在 Python 3 中打开和关闭文件。了解这些基础操作对于数据处理、日志记录以及其他文件操作任务至关重要。

2. 打开文件

2.1 open() 函数介绍

Python 提供了内置的 open() 函数,用于打开一个文件。这个函数需要至少一个参数:文件名。

file = open("filename.txt")

在上面的例子中,"filename.txt" 是你想要打开的文件的名称。如果该文件和 Python 脚本位于同一目录下,你只需提供文件名即可。否则,你需要提供完整的路径。

2.2 open() 函数参数

  • mode (字符串):表示打开文件的模式。常用的模式有 'r'(读取)、'w'(写入,如果文件已存在则覆盖)、'a'(追加)、'b'(二进制模式)等。默认模式是 'r'。
  • buffering (整数):设置缓冲区大小。0 表示不使用缓冲区,1 表示行缓冲(只有遇到换行符时才刷新缓冲区),任何其他正值 n 表示使用指定的缓冲区大小。负值则使用系统默认的缓冲区大小。
  • encoding (字符串):文件编码格式。如果未提供,Python 将会使用 locale.getpreferredencoding(False) 的返回值。

2.3 open() 函数示例

# 读取文件
file = open("filename.txt", 'r')

# 写入文件,如果文件已存在则覆盖
file = open("filename.txt", 'w')

# 追加到文件末尾
file = open("filename.txt", 'a')

3. 关闭文件

3.1 close() 函数介绍

当你完成了对文件的操作后,应该显式地关闭文件。这可以通过调用 close() 方法来实现。

file = open("filename.txt", 'r')
# 在此处进行文件操作...
file.close()

3.2 with 语句

Python 提供了一个更加优雅的方法来处理文件,那就是使用 with 语句。当执行完 with 语句中的代码块后,无论操作成功与否,文件会自动关闭。

with open("filename.txt", 'r') as file:
    # 在此处进行文件操作...

4. 最佳实践

  • 始终使用 with 语句来打开文件。这可以确保即使发生异常,文件也会被正确地关闭。
  • 在读取文本文件时,应该总是指定编码格式。否则,Python 可能会使用不正确的默认值,导致数据损坏或安全漏