日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達者為師

網(wǎng)站首頁 編程語言 正文

Python?readline()和readlines()函數(shù)實現(xiàn)按行讀取文件_python

作者:NOGE2022 ? 更新時間: 2023-05-13 編程語言

如果想讀取用 open() 函數(shù)打開的文件中的內(nèi)容,除了可以使用 read() 函數(shù),還可以使用 readline() 和 readlines() 函數(shù)。

和 read() 函數(shù)不同,這 2 個函數(shù)都以“行”作為讀取單位,即每次都讀取目標(biāo)文件中的一行。對于讀取以文本格式打開的文件,讀取一行很好理解;對于讀取以二進制格式打開的文件,它們會以“\n”作為讀取一行的標(biāo)志。

Python readline()函數(shù)

readline() 函數(shù)用于讀取文件中的一行,包含最后的換行符“\n”。此函數(shù)的基本語法格式為:

file.readline([size])

其中,file 為打開的文件對象;size 為可選參數(shù),用于指定讀取每一行時,一次最多讀取的字符(字節(jié))數(shù)。

和 read() 函數(shù)一樣,此函數(shù)成功讀取文件數(shù)據(jù)的前提是,使用 open() 函數(shù)指定打開文件的模式必須為可讀模式(包括 r、rb、r+、rb+ 4 種)。

仍以前面章節(jié)中創(chuàng)建的 my_file.txt 文件為例,該文件中有如下 2 行數(shù)據(jù):

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

下面程序演示了 readline() 函數(shù)的具體用法:

f =open("my_file.txt")
讀取一行數(shù)據(jù)
byt = f.readline()
print(byt)

程序執(zhí)行結(jié)果為:

Python教程

由于 readline() 函數(shù)在讀取文件中一行的內(nèi)容時,會讀取最后的換行符“\n”,再加上 print() 函數(shù)輸出內(nèi)容時默認(rèn)會換行,所以輸出結(jié)果中會看到多出了一個空行。
不僅如此,在逐行讀取時,還可以限制最多可以讀取的字符(字節(jié))數(shù),例如:

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

運行結(jié)果為:

b'Python'

和上一個例子的輸出結(jié)果相比,由于這里沒有完整讀取一行的數(shù)據(jù),因此不會讀取到換行符。

Python readlines()函數(shù)

readlines() 函數(shù)用于讀取文件中的所有行,它和調(diào)用不指定 size 參數(shù)的 read() 函數(shù)類似,只不過該函數(shù)返回是一個字符串列表,其中每個元素為文件中的一行內(nèi)容。

和 readline() 函數(shù)一樣,readlines() 函數(shù)在讀取每一行時,會連同行尾的換行符一塊讀取。
readlines() 函數(shù)的基本語法格式如下:

file.readlines()

其中,file 為打開的文件對象。和 read()、readline() 函數(shù)一樣,它要求打開文件的模式必須為可讀模式(包括 r、rb、r+、rb+ 4 種)。

舉個例子:

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

運行結(jié)果為:

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

原文鏈接:https://blog.csdn.net/m0_74309242/article/details/129034762

欄目分類
最近更新