如何使用Python函数进行文本文件读取和写入
Python 是一种高级编程语言,常用于数据分析、机器学习等领域。在处理文本文件时,Python 内置了丰富的函数和方法,能够方便地进行文件读取和写入操作,提高开发效率。
一、文本文件读取
Python 可以使用 open() 函数来打开文本文件,我们可以指定文件的路径、文件名以及打开文件的模式。模式有读模式('r')、写模式('w')、追加模式('a')等,读模式是默认模式,如果我们不指定模式,则默认打开文件为读模式。
下面看一个例子,我们假定有一个文本文件 test.txt,它的路径为 D:/test/test.txt。我们将通过 Python 程序读取该文件的所有内容。
# 打开文件
with open('D:/test/test.txt', 'r') as f:
# 读取文件内容
content = f.read()
# 打印文件内容
print(content)
# 关闭文件
f.close()
这段代码首先使用 with 语句打开文件,'r' 表示读模式。在 with 语句块中,我们使用 f.read() 读取文件内容,并将其赋值给 content 变量,接着将 content 变量打印到控制台。最后我们使用 f.close() 关闭文件。使用 with 语句可以避免忘记关闭文件的问题,不需要再手动调用 f.close() 关闭文件。
如果我们只需要读取文件的一行或几行,可以使用 f.readline() 函数。该函数每次读取一行,当读取到文件结尾时,会返回空字符串。
# 打开文件
with open('D:/test/test.txt', 'r') as f:
# 读取文件内容
line1 = f.readline()
line2 = f.readline()
# 打印文件内容
print(line1)
print(line2)
# 关闭文件
f.close()
该代码将读取 test.txt 的前两行,我们分别使用 line1 和 line2 两个变量来存储读取到的内容。
如果我们需要读取整个文件内容,并且逐行处理每一行文字,我们可以用 for 循环来实现。
# 打开文件
with open('D:/test/test.txt', 'r') as f:
# 逐行读取文件内容
for line in f:
print(line.strip())
# 关闭文件
f.close()
该代码使用了 for 循环,每次迭代读取一行文本,并打印到控制台。注意:由于每一行文字都包含一个换行符
,因此我们需要使用 strip() 函数来去除换行符。
二、文本文件写入
使用 Python 写入文本文件需要先打开一个文件,并指定文件的路径、文件名以及打开文件的模式。模式有写模式('w')、追加模式('a')等。
# 打开文件
with open('D:/test/test.txt', 'w') as f:
# 写入文件内容
f.write('hello, world!
')
# 关闭文件
f.close()
该代码以写模式打开 test.txt,然后使用 f.write() 函数将 'hello, world!
' 写入到文件中,最后关闭文件。注意:每次写入数据时,需要在数据末尾加上换行符
,否则写入的数据会在同一行显示。
如果我们希望逐行写入数据,可以使用 f.writelines() 函数。
# 打开文件
with open('D:/test/test.txt', 'w') as f:
# 写入文件内容
f.writelines(['line1
', 'line2
', 'line3
'])
# 关闭文件
f.close()
该代码使用 f.writelines() 函数逐行写入数据到文件中。注意:和 f.write() 一样,每行数据需要以换行符
结尾。
三、异常处理
读取和写入文件时,有可能会出现一些异常情况,例如:文件不存在、文件权限不足等。为了避免程序崩溃,我们需要在代码中加入异常处理。
try:
with open('D:/test/test.txt', 'r') as f:
content = f.read()
print(content)
except FileNotFoundError:
print('Oops! There is no such file or directory.')
except PermissionError:
print('Oops! You do not have the permission to access the file.')
该代码通过 try-except 语句来捕获 FileNotFoundError 和 PermissionError 异常。如果文件不存在或没有访问权限,则程序会输出相应的提示信息。
总结
本文详细介绍了 Python 中读取和写入文本文件的方法。我们可以使用 open() 函数打开文件,使用 'r'、'w'、'a' 等模式指定文件的打开方式。在读取文件时,我们可以使用 read()、readline()、for 循环等方法。在写入文件时,我们可以使用 write()、writelines() 等方法。在程序中加入异常处理可以有效避免程序因文件不存在或权限不足而崩溃的问题。通过本文的学习,我们可以更加熟练地使用 Python 处理文本文件,提高代码开发的效率。
