Python讀取檔案

2021-09-24 13:33:12 字數 1420 閱讀 1573

python 將文字檔案的內容讀入可以操作的字串變數非常容易。檔案物件提供了三個「讀」方法:read()readline()readlines()。呼叫read()會一次性讀取檔案的全部內容,如果檔案超過記憶體大小,會造成memoyerror,所以,為保險起見,可以反覆呼叫read(size)方法,每次最多讀取size個位元組的內容。另外,呼叫readline()可以每次讀取一行內容,呼叫readlines()一次讀取所有內容並按行返回list。如果檔案很小,read()一次性讀取最方便;如果不能確定檔案大小,反覆呼叫read(size)比較保險;如果是配置檔案,呼叫readlines()最方便

f = open(filename, "r")

data = f.read()

print(data)

f.close()

處理大檔案是很容易想到的就是將大檔案分割成若干小塊處理,處理完每一小塊後釋放該部分記憶體。

def read_in_chunks(file_obj, chunk_size=4096):

"""function to read a file piece by piece.

default chunk size: 4kb.

"""while true:

data = file_obj.read(chunk_size)

if not data:

break

yield data

f = open("filename")

for chuck in read_in_chunks(f):

#do_something(chunk)

f.close()

with語句開啟和關閉檔案,包括丟擲乙個內部塊異常。for line in f檔案物件f視為乙個迭代器,會自動的採用緩衝io和記憶體管理,所以不必擔心大檔案。

with open(filename, "rb") as f:

for line in f:

process(line) #

面對百萬行的大型檔案使用with open()是沒有問題的,但是這裡面引數的不同也會導致不同的效率。經過測試發現引數為"rb"時的效率比"r"高很多。由此可知二進位制讀取依然是最快的模式

python高階讀取檔案 Python讀取檔案內容

開啟檔案之後,就可以讀取檔案的內容,檔案物件提供多種讀取檔案內容的方法。開啟test.txt檔案 f open test.txt r 開啟test.txt檔案 f.close 關閉檔案 test.txt檔案有以下內容 hello world.hello python.hello imooc.讀取若干...

Python檔案讀取

python提供了多種方法實現檔案讀取操作 1 read 2 readline 3 readlines 4 xreadlines 很多人也在糾結到底應該選擇哪種方式,甚至疑問在處理大檔案時應該選擇哪種方式,因為擔心檔案過大導致記憶體佔用率過高甚至無法完全載入。其實,這個問題是多餘的,在引入了迭代器和...

python檔案讀取

1.讀取txt檔案 read 讀取整行檔案 readline 讀取一行資料 readines 讀取所有行的資料 讀取txt檔案 user file open user info.txt r lines user file.readlines forline inlines username line...