在Python中,文件操作是一项非常常见的任务。你可以使用Python的内置函数来打开、读取、写入和关闭文件。同时,为了确保文件操作的稳定性和可靠性,你还需要学习如何在Python中处理异常。
文件操作
- 打开文件
使用open()
函数可以打开文件。这个函数需要两个参数:文件名和模式。模式可以是'r'
(只读)、'w'
(写入,如果文件已存在则会被覆盖)、'a'
(追加,如果文件已存在则会在文件末尾添加内容)或'x'
(创建新文件用于写入,如果文件已存在则会引发异常)。
ini
python复制代码
file = open('example.txt', 'r')
- 读取文件
使用read()
方法可以从文件中读取内容。
ini
python复制代码
content = file.read()
- 写入文件
使用write()
方法可以向文件中写入内容。
lua
python复制代码
file = open('example.txt', 'w')
file.write('Hello, world!')
- 关闭文件
使用close()
方法可以关闭文件。在关闭文件之后,你就不能再对其进行读写操作了。
go
python复制代码
file.close()
异常处理
在文件操作中,可能会遇到各种异常,例如文件不存在、没有读写权限等。Python提供了异常处理机制,可以在遇到这些问题时进行处理。
python
python复制代码
try:
file = open('example.txt', 'r')
content = file.read()
print(content)
except FileNotFoundError:
print('文件不存在')
except PermissionError:
print('没有读写权限')
finally:
if file:
file.close()
在这个例子中,我们使用了try/except
语句来捕获可能发生的异常。如果open()
函数引发了FileNotFoundError
或PermissionError
异常,那么对应的except
块就会被执行。finally
块中的代码无论是否发生异常都会被执行,所以通常用来清理资源,例如关闭文件。
你也可以使用with
语句来自动处理文件的打开和关闭,这样就不需要显式调用close()
方法了。
python
python复制代码
try:
with open('example.txt', 'r') as file:
content = file.read()
print(content)
except FileNotFoundError:
print('文件不存在')
except PermissionError:
print('没有读写权限')
在这个例子中,with
语句会在代码块执行完毕后自动关闭文件,无论是否发生异常。这使得代码更加简洁,也减少了出错的可能性。