欢迎访问宙启技术站
智能推送

Python 文件 I/O 函数:如何读写文件?

发布时间:2023-05-31 04:54:36

Python是一种强大而广泛使用的编程语言,它提供了方便易用且强大的文件输入/输出函数。Python的文件输入/输出函数允许我们读写文件并处理文件数据。在这篇文章中,我们将介绍Python文件输入/输出函数的基本知识,并探讨如何在Python中读写文件。

文件读取(读取文件内容)

在Python中,我们可以使用open()函数来打开一个文件。open()函数的语法如下:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

其中,file参数是要打开的文件名,mode参数指定文件的打开模式。常见的模式包括:

'r':只读方式打开文件

'w':写入方式打开文件

'a':追加方式打开文件

'x':创建文件并以写入方式打开文件

'b':打开二进制文件

‘t’:打开文本文件

'+':同时进行读写操作

例如,要以只读方式打开一个文本文件,可以这样写:

file = open('test.txt', 'r')

一旦打开了文件,我们可以使用文件对象(file object)中的方法来读取文件内容。以下是Python文件对象中一些常见的方法:

read():读取文件的全部内容

read(n):读取n个字符

readline():读取下一行

readlines():读取所有行并返回列表

其中,read()表示读取整个文件内容。例如,要读取一个名为test.txt的文件,可以这样写:

file = open('test.txt', 'r')

content = file.read()

这个操作会将test.txt中的所有内容读取并存储到字符串变量content中。

与read()不同,readline()方法则会在每次调用时读取文件的下一行。因此,我们可以使用一个while循环来读取整个文件,如下所示:

file = open('test.txt', 'r')

while True:

    line = file.readline()

    if not line:

        break

    print(line)

这个操作会逐行读取test.txt中的所有内容,并输出到控制台。

文件写入(向文件写入内容)

除了读取文件外,我们还可以使用Python文件输入/输出函数将数据写入文件。写文件的方法与读取文件非常相似。例如,要以写入方式打开一个名为test.txt的文件,可以这样写:

file = open('test.txt', 'w')

一旦打开了文件,我们可以调用文件对象中的write()方法将数据写入文件。例如,要将一个字符串写入test.txt文件,可以这样写:

file = open('test.txt', 'w')

file.write('This is a test.')

这个操作会向test.txt文件写入字符串'This is a test.'。

如果我们需要将多个字符串写入文件,并确保它们都占据不同的行,可以用write()方法将每行字符串以换行符

分隔开来,如下所示:

file = open('test.txt', 'w')

file.write('This is a test.

')

file.write('More data.

')

file.write('And more data.

')

这个操作会将三行字符串分别写入到test.txt文件的不同行中。

使用with语句(自动关闭文件)

在使用Python文件输入/输出函数时,如果不手动关闭文件,会导致文件泄漏,进而影响程序健壮性。要避免这个问题,我们可以使用下面的语法来确保自动关闭文件:

with open('test.txt', 'r') as file:

    content = file.read()

这个语句使用with关键字打开一个名为test.txt的文件,并将文件对象赋值给变量file。with语句结束时,Python会自动关闭文件。这个技巧简化了文件输入/输出函数的使用,使操作更加安全而简单。

结论

Python文件输入/输出函数是基本而且强大的工具,可以使我们轻松读写文件并处理文件数据。在使用python文件输入/输出函数时,请务必确保使用常见的机制来自动关闭文件,以确保程序的健壮性。始终遵循尽可能简单的简约原则,以使操作更加清晰、简单、可维护和可扩展。