您好,登錄后才能下訂單哦!
Python中怎么讀取文本文件的內容,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
文本操作可以想象成對水池進行加水和排水。文本文件就好比一個存儲水的水池,數據就類似水。從文本文件中讀取數據好比讓水池排水。在這過程中,我們需要一條“管道”才能從讀取到數據。在 Python 語言中,open() 函數就是這樣的“管道”。當 open() 函數成功打開文件后,我們會得到一個 file 對象。
file = open('One Day.txt', 'r')
但是操作文件經常會出現各種異常,例如文件不存在,文件不具備可讀屬性等。因此,我們需要做異常處理工作。這里推薦使用 with
語句,其內部已經實現異常處理相關的邏輯。另外還有一個好處,我們還可以不用調用 close()
函數來關閉文件。
with open('One Day.txt', 'r') as file:
pass
open() 函數的第二個參數是打開模式。可以是只讀r
,寫入w
,追加a
、以二進制形式讀取rb
等。
read() 函數讀取數據方式有點暴力。它是一次性將文件的全部內容讀取到內存中。如果文件太多的話,會把內存給撐爆。為了保險起見,我們通常每次只讀取一小段區間內容,然后反復調用。
# -*- coding:utf-8 -*-
size = 1024
with open('one day.txt', 'r') as file:
print(file.read(size))
如果我們需要每次只讀取一行內容,則需要用到readline()
函數。這種讀取方式雖然效率不高,但是占用內存小,能做到即讀即用。
# -*- coding:utf-8 -*-
import time
with open('one day.txt', 'r') as file:
for line in file:
# realine() 讀取整行內容,包括 "\n" 字符
print(file.readline().strip())
time.sleep(1)
realines()
函數跟read()
類似,會一次性讀取所有內容,然后按行返回一個 list 對象。這種讀取方式速度會比較快。但隨著文本的增大,占用內存會越來越多。一般讀取配置文件,可以使用這種方法。
# -*- coding:utf-8 -*-
import time
with open('one day.txt', 'r') as file:
for line in file.readlines():
print(line.strip())
time.sleep(1)
看完上述內容,你們掌握Python中怎么讀取文本文件的內容的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。