python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python按行读取文件

Python readline()和readlines()函数实现按行读取文件

作者:NOGE2022

本文主要介绍了Python readline()和readlines()函数实现按行读取文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

如果想读取用 open() 函数打开的文件中的内容,除了可以使用 read() 函数,还可以使用 readline() 和 readlines() 函数。

和 read() 函数不同,这 2 个函数都以“行”作为读取单位,即每次都读取目标文件中的一行。对于读取以文本格式打开的文件,读取一行很好理解;对于读取以二进制格式打开的文件,它们会以“\n”作为读取一行的标志。

Python readline()函数

readline() 函数用于读取文件中的一行,包含最后的换行符“\n”。此函数的基本语法格式为:

file.readline([size])

其中,file 为打开的文件对象;size 为可选参数,用于指定读取每一行时,一次最多读取的字符(字节)数。

和 read() 函数一样,此函数成功读取文件数据的前提是,使用 open() 函数指定打开文件的模式必须为可读模式(包括 r、rb、r+、rb+ 4 种)。

仍以前面章节中创建的 my_file.txt 文件为例,该文件中有如下 2 行数据:

Python教程
http://csdn.net/python/

下面程序演示了 readline() 函数的具体用法:

f =open("my_file.txt")
读取一行数据
byt = f.readline()
print(byt)

程序执行结果为:

Python教程

由于 readline() 函数在读取文件中一行的内容时,会读取最后的换行符“\n”,再加上 print() 函数输出内容时默认会换行,所以输出结果中会看到多出了一个空行。
不仅如此,在逐行读取时,还可以限制最多可以读取的字符(字节)数,例如:

#以二进制形式打开指定文件
f =open("my_file.txt",'rb')
byt = f.readline(6)
print(byt)

运行结果为:

b'Python'

和上一个例子的输出结果相比,由于这里没有完整读取一行的数据,因此不会读取到换行符。

Python readlines()函数

readlines() 函数用于读取文件中的所有行,它和调用不指定 size 参数的 read() 函数类似,只不过该函数返回是一个字符串列表,其中每个元素为文件中的一行内容。

和 readline() 函数一样,readlines() 函数在读取每一行时,会连同行尾的换行符一块读取。
readlines() 函数的基本语法格式如下:

file.readlines()

其中,file 为打开的文件对象。和 read()、readline() 函数一样,它要求打开文件的模式必须为可读模式(包括 r、rb、r+、rb+ 4 种)。

举个例子:

f =open("my_file.txt",'rb')
byt = f.readlines()
print(byt)

运行结果为:

[b'Python\xbd\xcc\xb3\xcc\r\n', b'http://csdn.net/python/']

到此这篇关于Python readline()和readlines()函数实现按行读取文件的文章就介绍到这了,更多相关Python按行读取文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文