檔案的讀取操作
檔案:什麼是檔案
檔案是用於資料儲存的單位
檔案通常用來長期儲存設定
檔案中的資料是以位元組為單位進行順序儲存的
記憶體的讀寫速度快/ 磁碟的讀寫速度慢
檔案的操作步驟:
開啟檔案
讀寫檔案
關閉檔案
python中開啟檔案open與with open 的區別?
區別:應用場景不同
try…except…主要是用來處理檔案不存在的情況的,檔案不存在則open()的報錯會被處理成提示資訊,不會阻塞程式的執行;
2 with open()主要用來保證檔案一定會關閉,但是如果檔案不存在導致報錯,依然會阻塞程式繼續執行。
3 通俗總結來說,try…except比較繁瑣一點,主要用來解決【讀取檔案】操作是檔案不存在的問題。with…open更加簡潔,主要用來[寫入檔案]操作時,保證檔案關閉。
4 但是,try…except…finally 雖然繁瑣但是可以同時解決上述兩個場景。
注意:呼叫read()會一次性讀取檔案的全部內容,如果檔案有10g,記憶體就爆了,所以,要保險起見,可以反覆呼叫read(size)方法,每次最多讀取size個位元組的內容。另外,呼叫readline()可以每次讀取一行內容,呼叫readlines()一次讀取所有內容並按行返回list。因此,要根據需要決定怎麼呼叫
一、 檔案讀取
使用with open
二、 遍歷檔案# 檔案
# 讀取檔案(放於python工作路徑下)
# 使用關鍵字with時,open()返回的檔案物件只在with**塊內可用,如果要在with**塊外訪問檔案的內容,可在with**塊內將檔案的各行儲存在乙個列表中
with open('pi_million_digits.txt') as f:
contents = f.read()
print(contents.rstrip()) # rstrip():刪除(剝除)字串末尾的空白
# 直接使用檔案路徑:注意(windows使用反斜槓\,linux使用斜槓/)
# with open('c:\users\x6ti\desktop\python\python檔案讀取\pi_million_digits.txt') as f
三、 寫入檔案# 遍歷檔案
# 逐行讀取
filename = 'learning_python.txt'
with open(filename) as f:
for line in f:
print(line.rstrip())
建立乙個包含檔案各行內容的列表
# 建立乙個包含檔案各行內容的列表
filename = 'learning_python.txt'
with open(filename) as f:
lines = f.readlines()
# readlines():從檔案在讀取每一行,並將其儲存在乙個列表中
# 此時 lines為乙個列表
print(type(lines))
for line in lines:
print(line.rstrip())
四、 檔案物件的方法# 寫入檔案
filename = 'sb.txt'
with open(filename, 'w') as f:
f.write("飛龍在天")
f.write("南韓網咖\n")
f.write("避雨")
# open():三個有用實參;r(唯讀),w(寫入,重新寫入,清空原檔案),a(附加模式,新增不覆蓋),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...