python面試題之read、readline和readlines的區別詳解
一、read
可以一次性讀取文件中所有內容
1.txt文件內容
🔥語法:
file.read([size])
例1:file.read():會將所有的內容讀取出來
with open('1.txt','r') as file: content=file.read() print(content)
執行結果:
file.read():是從文件的頭部開始讀取的。如果想要讀取部分內容,可以先使用文件對象的seek()方法將文件的指針移動到新的位置,然後再應用read(size)方法讀取。
seek()方法的基本語法格式:
file.seek(offset[,whence])
file:表鎖已經打開的文件
offset:用於指定移動的字符個數
whence:用於指定從什麼位置開始計算,值為0表示從文件頭開始計算,1表示從當前位置開始計算,2表示從文件末尾開始計算,默認為0
例2:讀取部分內容
with open('1.txt','r') as file: file.seek(22) content=file.read() print(content)
執行結果:
例3:file.read(size):表示讀取size個字符
with open('1.txt','r') as file: file.seek(22) content=file.read(10) print(content)
執行結果:
二、readline
每次讀取一行數據
🔥格式:
file.readline()
file:打開的文件對象
例4:file.readline()讀取一條數據
with open('1.txt','r') as file: content=file.readline() print(content)
執行結果:
例5:通過循環將文件中的數據全部讀取出來
with open('1.txt','r') as file: number=0 while True: number+=1 content=file.readline() if content=='': break print(number,content,end='\n')
執行結果:
三、readlines
讀取全部行,返回的是一個字符串列表,每個元素為文件的一行內容
🔥語法:
file.readlines()
file:打開的文件
例6:讀取全部行
with open('1.txt','r') as file: content=file.readlines() print(content)
執行結果:
例7:將列表元素逐行輸出
with open('1.txt','r') as file: content=file.readlines() for index,item in enumerate(content): print(index,item)
執行結果:
總結
- .read() 每次讀取整個文件,它通常將讀取到底文件內容放到一個字符串變量中,也就是說 .read() 生成文件內容是一個字符串類型。
- .readline()每隻讀取文件的一行,通常也是讀取到的一行內容放到一個字符串變量中,返回str類型。
- .readlines()每次按行讀取整個文件內容,將讀取到的內容放到一個列表中,返回list類型。
到此這篇關於python面試題之read、readline和readlines區別的文章就介紹到這瞭,更多相關python read、readline和readlines區別內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python如何實現逐行讀取文本文件
- Python函數進階與文件操作詳情
- Python readline()和readlines()函數實現按行讀取文件
- python基礎之文件處理知識總結
- Python 循環讀取數據內存不足的解決方案