Python讀取txt檔案的三種方式
阿新 • • 發佈:2018-12-11
文字處理是經常碰到的一個問題,Python的文字讀取有三個方法可以呼叫:
read()
readaline()
readlines()
直接看名字就大概能猜出什麼意思。 第一個函式就是直接把文字內容全部讀取出來 第二個函式是逐行讀取 第三個函式是逐行全部讀取
每一種方法都各有利弊,簡要如下: read():是最簡單的一種方法,一次性讀取檔案的所有內容放在一個大字串中,即存在記憶體中,方便操作,但是怕檔案過大,記憶體不夠
file_object = open('test.txt') //open 一個檔案,最好不要把open放進try裡 try: file_context = file_object.read() finally: file_object.close()
readline() 逐行讀取,結果是list
with open(file) as f:
line = f.readline()
while line:
print line
line = f.readline()
逐行讀取,速度慢,佔用記憶體小
readlines() 一次性讀取文字的所有內容,結果是一個list
with open(file) as f:
for line in f.readlines():
print line
記憶體佔用也會很大,另外可以嘗試: 用for來逐行讀取
file_object = open('test.txt','rU') try: for line in file_object: do_somthing_with(line) //line帶"\n" finally: file_object.close()