Python 文件读写操作

1. 简介
文件操作是计算机编程中非常常见且重要的一部分。在很多场景下,我们需要读取外部文件中的数据,或者将程序中生成的数据保存到文件中。Python 提供了简单而强大的文件读写操作,以满足我们的需求。
在本文中,我们将详细介绍如何使用 Python 进行文件读写操作。首先我们将学习如何打开和关闭文件,然后我们将探讨不同的文件读取方式和文件写入方式。
2. 打开和关闭文件
在 Python 中,我们可以使用 open() 函数来打开一个文件。这个函数接受两个参数:文件名和打开模式。打开模式可以是只读模式(’r’),写入模式(’w’)或追加模式(’a’)。我们可以用 'r'、'w' 和 'a' 作为打开模式参数的值,分别代表只读、写入和追加模式。
下面是一个例子,展示了如何打开一个文件:
file = open('example.txt', 'r')
在使用完文件之后,我们应该调用文件对象的 close() 方法来关闭文件,以释放资源。
file.close()
由于文件在打开的状态下,会占用计算机的资源,因此必须确保在使用完文件后关闭它。
3. 读取文件内容
有了已经打开的文件对象,我们可以使用一些方法来读取文件的内容。
3.1. read() 方法
read() 方法用于一次性读取整个文件的内容。下面的例子演示了如何使用 read() 方法来读取文件:
file = open('example.txt', 'r')
content = file.read()
print(content)
file.close()
运行上述代码,将会输出文件 example.txt 中的所有内容。
3.2. readline() 方法
readline() 方法用于一次读取文件的一行。下面的例子演示了如何使用 readline() 方法来逐行读取文件内容:
file = open('example.txt', 'r')
line1 = file.readline()
line2 = file.readline()
print(line1)
print(line2)
file.close()
运行上述代码,将会输出文件 example.txt 的前两行。
3.3. readlines() 方法
readlines() 方法用于将文件内容按行读取,并存储在一个列表中。下面的例子演示了如何使用 readlines() 方法来读取文件的所有行:
file = open('example.txt', 'r')
lines = file.readlines()
print(lines)
file.close()
运行上述代码,将会输出文件 example.txt 的所有行。
4. 写入文件
在 Python 中,我们可以使用 write() 方法向文件中写入内容。当我们以写入模式('w')或追加模式('a')打开文件时,可以使用 write() 方法写入文件。需要注意的是,如果以只读模式('r')打开文件,则无法使用 write() 方法写入内容。
4.1. 写入单行内容
下面的例子演示了如何向文件中写入一行内容:
file = open('example.txt', 'w')
file.write('Hello, world!')
file.close()
运行上述代码后,文件 example.txt 中将会写入一行内容:“Hello, world!”
4.2. 写入多行内容
下面的例子演示了如何向文件中写入多行内容:
file = open('example.txt', 'w')
lines = ['Line 1\n', 'Line 2\n', 'Line 3\n']
file.writelines(lines)
file.close()
运行上述代码后,文件 example.txt 中将会写入三行内容:“Line 1”,“Line 2” 和 “Line 3”。
5. 异常处理
在进行文件读写操作时,可能会出现各种错误,例如文件不存在、权限不足等。为了避免程序因为文件读写错误而崩溃,我们应该使用异常处理机制来捕获和处理这些错误。
5.1. 捕获异常
在文件操作中,常见的异常类是 FileNotFoundError、PermissionError 等。我们可以使用 try 和 except 语句来捕获这些异常并处理它们。下面的例子演示了如何捕获文件不存在的异常:
try:
file = open('example.txt', 'r')
except FileNotFoundError:
print("文件不存在")
如果文件 example.txt 不存在,上述代码将会输出“文件不存在”。
5.2. 处理异常
在捕获到异常后,我们可以选择不同的处理方式。下面的例子演示了当文件不存在时,输出自定义的错误信息:
try:
file = open('example.txt', 'r')
except FileNotFoundError:
print("文件不存在")
# 进一步的处理代码...
我们可以根据实际需求,在 except 语句块中编写相应的处理代码。
6. 总结
在本文中,我们学习了如何使用 Python 进行文件读写操作。我们了解了如何打开和关闭文件,以及不同的文件读取方式(read()、readline()、readlines())和文件写入方式(write()、writelines())。我们还学习了如何使用异常处理机制来捕获和处理文件读写错误。
文件操作是 Python 编程中常见且重要的部分,掌握了文件读写的技巧,可以为我们处理各种数据处理任务提供便利。
极客教程