open()
函数是 Python 中处理文件的基本函数。通过使用 open()
函数,我们可以打开一个文件,并返回一个表示该文件的文件对象。这个文件对象可以用来读取、写入和修改文件的内容。
文件模式
open()
函数接受两个主要参数:文件名和文件模式。文件模式决定了我们如何与文件交互。以下是几种常用的文件模式:
'r'
- 只读模式(默认)。如果文件不存在,则会抛出异常。'w'
- 写入模式。如果文件存在,则会清空文件内容;如果文件不存在,则创建新文件。'x'
- 独占创建模式。如果文件已存在,则操作失败。'a'
- 追加模式。如果文件存在,则在文件末尾追加内容;如果文件不存在,则创建新文件。'b'
- 二进制模式。与其它模式结合使用,如'rb'
或'wb'
。't'
- 文本模式(默认)。与'b'
模式结合使用,如'rt'
或'wt'
。'+'
- 更新模式。与其它模式结合使用,如'r+'
、'w+'
或'a+'
。
例如,使用只读模式打开文件:
f = open('example.txt', 'r')
打开文件示例
读取文件内容
假设我们有一个名为 example.txt
的文本文件,内容如下:
Hello, World! This is a test file.
我们可以使用以下代码来读取文件内容:
with open('example.txt', 'r') as f: content = f.read() print(content)
输出结果:
Hello, World! This is a test file.
逐行读取文件
逐行读取文件是一种更高效的方法,尤其是在处理大文件时。我们可以使用 readline()
方法逐行读取文件,也可以使用 for
循环遍历文件对象。
with open('example.txt', 'r') as f: for line in f: print(line.strip())
输出结果:
Hello, World! This is a test file.
写入文件内容
要向文件写入内容,可以使用 'w'
或 'a'
模式。使用 'w'
模式会覆盖原有内容,而 'a'
模式会在文件末尾追加内容。
with open('example.txt', 'w') as f: f.write('New content.\n') with open('example.txt', 'a') as f: f.write('Appended content.')
此时,文件 example.txt
的内容变为:
New content. Appended content.
使用上下文管理器
使用 with
语句打开文件是一个推荐的做法,因为它确保文件在操作完成后被正确关闭。即使发生异常,with
语句也会确保文件被关闭。
with open('example.txt', 'r') as f: content = f.read() print(content) # 文件已自动关闭
文件编码
当处理非 ASCII 编码的文件时,可以指定文件编码。常见的文件编码有 'utf-8'
和 'gbk'
等。
with open('example.txt', 'r', encoding='utf-8') as f: content = f.read() print(content)
总结
通过 open()
函数,我们可以轻松地读取和写入文件。掌握不同的文件模式和编码方式,能够帮助我们更灵活地处理各种文件操作任务。希望本文档能帮助你更好地理解和使用 open()
函数。