open()函式
一般情況下,使用open()函式時只需要調入檔名引數,而不新增其它任何引數,就可以獲取檔案內容。相反,如果要向檔案中新增資訊,就必須制定乙個模式引數,用來宣告它準備做什麼,這個模式引數才是open()的靈魂。以下下**是open()函式的使用語法:
open(name[,mode[,buffering]])
其中,name引數表示需要開啟的檔名稱,mode是開啟模式,
open()函式的第三個引數用來控制檔案的緩衝,預設值為0,
表示不緩衝,設定為1就會有緩衝。
讀寫模式
r:以唯讀方式開啟檔案(預設模式)。檔案指標定位在檔案頭的位置。如果檔案不存在會報錯。
a:以追加方式開啟檔案,同樣是只寫,不允許進行讀操作。如果檔案存在,則開啟檔案,將檔案指標定位到檔案尾。因此,新的內容是追加在已有內容之後。如果檔案不存在,則建立新檔案進行寫入。
+:開啟乙個檔案進行更新(可讀寫)。注意:該模式不能單獨使用,需要與r/w/a組合使用。檔案指標的位置取決於另乙個組合引數。
組合模式
r+:開啟乙個檔案用於讀寫。如果檔案存在,則開啟檔案,將檔案指標定位在檔案頭,新寫入的內容在原有內容的前面;如果檔案不存在會報錯。
a+:以追加模式開啟乙個檔案用於讀寫。如果檔案存在,則開啟檔案,將檔案指標定位在檔案尾,新寫入的內容在原有內容的後面;如果檔案不存在,則建立乙個新檔案用於讀寫。
所有上面這些模式預設都是t——文字模式,如果要以二進位制模式開啟,需要加上引數b,如:rb、rb+、wb、wb+、ab、ab+。
在了解了各種模式引數的具體用法後,根據您要開啟的檔案型別,以及開啟檔案後的操作型別來選用正確的mode引數即可。
read(),readline(),readlines()
with open(r'c:\users\administrator\desktop\python學習1.txt','a') as f:
f.write('這是第一句測試!')
f.write('\n')
f.write('這是第二句測試!')
with open(r'c:\users\administrator\desktop\python學習1.txt') as f:
print(f.read()) #read(size) size表示讀取檔案的大小 不寫為讀取全部!
#輸出為:
這是第一句測試!
這是第二句測試!
with open(r'c:\users\administrator\desktop\python學習1.txt','w') as f:
f.write('這是第一句測試!')
f.write('\n')
f.write('這是第二句測試!')
with open(r'c:\users\administrator\desktop\python學習1.txt') as f:
print(f.readline()) #輸出一行字元,可以理解為遇到換行符終止
#輸出為:這是第一句測試!
with open(r'c:\users\administrator\desktop\python學習1.txt','w') as f:
f.write('這是第一句測試!')
f.write('\n')
f.write('這是第二句測試!')
with open(r'c:\users\administrator\desktop\python學習1.txt') as f:
print(f.readlines())
#輸出為:['這是第一句測試!\n', '這是第二句測試!']
#以列表的格式返回全部文字,文字的第幾行對應列表的第幾個元素!
write和writelines
file.write(str)的引數是乙個字串,就是你要寫入檔案的內容.
file.writelines(sequence)的引數是序列,比如列表,它會迭代幫你寫入檔案。和readlines相反!
c c 學習 open 函式
open 函式用於開啟和建立檔案。以下是 open 函式 的簡單描述 include fcntl.h int open const char pathname,int oflag,mode t mode 返回值 成功則返回檔案描述符,否則返回 1 對於 open 函式來說,第三個引數 僅當建立新檔案...
c c 學習 open 函式
open 函式用於開啟和建立檔案。以下是 open 函式的簡單描述 include int open const char pathname,int oflag,mode t mode 返回值 成功則返回檔案描述符,否則返回 1 對於 open 函式來說,第三個引數 僅當建立新檔案時才使用,用於指定...
python內建函式之open 函式
python open 函式用於開啟乙個檔案,建立乙個 file 物件,相關的方法才可以呼叫它進行讀寫。open name mode buffering 不同模式開啟檔案的完全列表 模式 描述r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。rb以二進位制格式開啟乙個檔案用於唯讀。檔...