您的位置:

Python中readlines函数的用法和示例

一、什么是readlines()函数?

在Python中,文件操作是必不可少的,我们可以使用readlines()函数来读取文件中的所有行并将其储存在列表中。这个函数可以用于打开文本文件,并将文件中的所有行读取到一个列表中;也可以用于迭代处理大文件,一次只读取一行。

二、readlines()函数的语法

f = open("file.txt",'r')
lines = f.readlines()
f.close()

该函数接受一个可选参数size,用于规定读取的字节数。当size被省略或者为负数时,readlines()会读取整个文件。

三、readlines()函数的实例

1. 读取文本文件

下面的示例读取名为test.txt文件中的行:

filename = "test.txt"
with open(filename) as file:
    lines = file.readlines()

for line in lines:
    print(line.strip())

strip()函数用于移除字符串前后的空格或换行符。

2. 迭代处理大文件

使用readlines()函数读取大文件可能会导致系统内存占用过高,因为它会一次性读取整个文件。更好的方法是每次处理文件中的一行而不是整个文件。

filename = "big_file.txt"
with open(filename) as file:
    for line in file:
        process(line)

这个方法相对于readlines()函数可以更好地处理大文件:

  • 节省内存 - 在每个循环中只读取一行文本内容,可以降低内存的占用。
  • 速度快 - 与读取整个文件相比,每次循环读取一行在处理大文件时更快。

3. 读取二进制文件

readlines()函数可以用于打开二进制文件,但需要额外指定打开文件的模式:

filename = "binary_file.bin"
with open(filename, "rb") as file:
    lines = file.readlines()

在打开文件时,需要使用“rb”来指明文件模式。

四、总结

readlines()函数是Python中用于读取文件中文本行的常用函数,可以一次性读取整个文件并将其存入列表中,也可以用于迭代处理大文件。

记住,在使用readlines()函数时需要注意内存占用和速度问题,因为它可能会导致内存占用过高。