如何用Python逐行读取文件

406 阅读2分钟

在各种任务中,文件操作是至关重要的。在这篇文章中,我们将讨论如何在Python中逐行读取一个文件。

使用readline()方法读取文件

Python为我们提供了readline() 方法来读取一个文件。为了读取文件,我们将首先在读取模式下使用open() 函数打开文件。open() 函数将文件名作为第一个输入参数,将文字 "r "作为第二个输入参数,表示文件是以读模式打开的。执行后,它返回一个包含该文件的文件对象。

得到文件对象后,我们可以使用readline() 方法来读取文件。当对一个文件对象调用readline() 方法时,返回文件中当前未读的行,并将迭代器移动到文件的下一行。

为了逐行读取文件,我们将使用 readline() 方法读取文件中的每一行,并在一个while循环中打印。一旦readline() 方法到达文件的末尾,它将返回一个空字符串。因此,在while循环中,我们也将检查从文件中读取的内容是否是一个空字符串,如果是,我们将脱离for循环。

使用readline() 方法读取文件的python程序如下。

myFile = open('sample.txt', 'r')
print("The content of the file is:")
while True:
    text = myFile.readline()
    if text == "":
        break
    print(text, end="")
myFile.close()

输出。

The content of the file is:
I am a sample text file.
I was created by Aditya.
You are reading me at Pythonforbeginners.com.

在Python中使用readlines()方法逐行读取文件

我们可以使用 readline() 方法,而不是使用readlines() 方法来读取Python中的文件。readlines() 方法,当对一个文件对象调用时,会返回一个字符串列表,列表中的每个元素都是文件中的一行。

打开文件后,我们可以使用readlines() 方法来获得文件中所有行的列表。之后,我们可以使用for循环来逐一打印文件中的所有行,如下所示。

myFile = open('sample.txt', 'r')
print("The content of the file is:")
lines = myFile.readlines()
for text in lines:
    print(text, end="")
myFile.close()

输出。

The content of the file is:
I am a sample text file.
I was created by Aditya.
You are reading me at Pythonforbeginners.com.

结论

在这篇文章中,我们讨论了在python中逐行读取文件的两种方法。