python可以通過建立乙個屬於 file 類的物件並適當使用它的 read 、 readline 、 write 方法
來開啟或使用檔案,並對它們進行讀取或寫入。讀取或寫入檔案的能力取決於你指定以何種
方式開啟檔案。最後,完成了檔案,你可以呼叫 close 方法來告訴 python 我們已經完
成了對該檔案的使用。
ok ,我們來看一下例項
poem = '''\
programming is fun
when the work is done
if you wanna make your work also fun:
use python!
'''f = open('poem.txt','w')
f.write(poem)
f.close()
f = open('poem.txt')
while true:
line = f.readline()
if len(line)==0:
break
else:
print(line)
f.close()
對於 open(filename,mode)函式,下面對mode引數做詳細接介紹
不同模式開啟檔案的完全列表:
模式
描述
r
以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。
rb
以二進位制格式開啟乙個檔案用於唯讀。檔案指標將會放在檔案的開頭。這是預設模式。
r+
開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
rb+
以二進位制格式開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
w
開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
wb
以二進位制格式開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
w+
開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
wb+
以二進位制格式開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。
a
開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
ab
以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
a+
開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。
ab+
以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。
為了讀取乙個檔案的內容,呼叫 f.read(size), 這將讀取一定數目的資料, 然後作為字串或位元組物件返回。
size 是乙個可選的數字型別的引數。 當 size 被忽略了或者為負, 那麼該檔案的所有內容都將被讀取並且返回。
f.readline() 會從檔案中讀取單獨的一行。換行符為 '\n'。f.readline() 如果返回乙個空字串, 說明已經已經讀取到最後一行。
f.readlines() 將返回該檔案中包含的所有行。
如果設定可選引數 sizehint, 則讀取指定長度的位元組, 並且將這些位元組按行分割。
f.write(string) 將 string 寫入到檔案中, 然後返回寫入的字元數。
f.tell() 返回檔案物件當前所處的位置, 它是從檔案開頭開始算起的位元組數。
在文字檔案中 (那些開啟檔案的模式下沒有 b 的), 只會相對於檔案起始位置進行定位。
當你處理完乙個檔案後, 呼叫 f.close() 來關閉檔案並釋放系統的資源,如果嘗試再呼叫該檔案,則會丟擲異常。
python 提供了乙個叫作 pickle 的標準模組,通過它你可以將任何純 python 物件儲存到一
個檔案中,並在稍後將其取回。這叫作持久地(persistently) 儲存物件。
看乙個例項
import
pickle
shoplistfile
='shoplist.data'
shoplist=[
,'mango'
,'carrot']
f=open
(shoplistfile
,'wb')
pickle.dump(shoplist,f)
f.close()
delshoplist f
=open
(shoplistfile
,'rb')
storelist
=pickle.load(f)
(storelist)
f.close()
process finished with exit code 0
我們可以從檔案中讀出來還是list的資料型別,恢復到儲存檔案前
pickle.dump(obj,file,[,protocol])
寫入函式
pickle
.
load
(
file
)
讀取函式,從file中讀取乙個字串,重構為python原來的物件
Python檔案訪問模式
一 檔案 1.檔案訪問模式 1 r,唯讀。2 w,只寫。若檔案存在,則清空檔案內容再寫 如檔案不存在,則建立檔案。3 a,追加。若檔案存在,則在檔案末尾追加文字,並且只能在文末追加 如檔案不存在,則建立檔案。4 r 讀寫。5 w 讀寫。w 和r 不同的是,它會清空檔案。6 a 讀寫。a 和r 不同的...
python檔案開啟的幾種訪問模式
訪問模式 說明 r 以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。w 開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。a 開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存...
Python獲取路徑與訪問檔案
一 獲取路徑和所在目錄 目錄結構 es rest test direction.py data abc.txt a.txt test direction.py coding utf 8 import os print 獲取當前檔案的絕對路徑 print os.path.abspath file 輸出...