語法格式:
open(file, mode='r', buffering=-1, encoding=none, errors=none, newline=none, closefd=true, opener=none)引數釋義:
二進位制檔案以固定大小的塊進行緩衝;
使用啟發式方法選擇緩衝區的大小,嘗試確定底層裝置的「塊大小」或
使用 io.default_buffer_size。
在許多系統上,緩衝區的長度通常為4096或8192位元組。
「互動式」文字檔案( isatty() 返回 true 的檔案)使用行緩衝。
其他文字檔案使用上述策略用於二進位制檔案。
1. 如果存在編碼錯誤,'strict' 會引發 valueerror 異常。 預設值 none 具有相同的效果。
2. 'ignore' 忽略錯誤。請注意,忽略編碼錯誤可能會導致資料丟失。
3. 'replace' 會將替換標記(例如 '?' )插入有錯誤資料的地方。
4. 'surrogateescape' 將表示任何不正確的位元組作為unicode專用區中的**點,
範圍從u+dc80到u+dcff。當在寫入資料時使用 surrogateescape 錯誤處理程式時,
這些私有**點將被轉回到相同的位元組中。這對於處理未知編碼的檔案很有用。
5. 只有在寫入檔案時才支援 'xmlcharrefreplace'。編碼不支援的字元將替換為相應的xml字元引用 nnn;。
6. 'backslashreplace' 用python的反向轉義序列替換格式錯誤的資料。
7. 'namereplace' (也只在編寫時支援)用 \n 轉義序列替換不支援的字元。
1. 從流中讀取輸入時,如果 newline 為 none,則啟用通用換行模式。
輸入中的行可以以 '\n','\r' 或 '\r\n' 結尾,這些行被翻譯成 '\n' 在
返回呼叫者之前。如果它是 '',則啟用通用換行模式,但行結尾將返回給呼叫者未翻譯。
如果它具有任何其他合法值,則輸入行僅由給定字串終止,並且行結尾將返回給未呼叫的呼叫者。
2. 將輸出寫入流時,如果 newline 為 none,
則寫入的任何 '\n' 字元都將轉換為系統預設行分隔符 os.linesep。
如果 newline 是 '' 或 '\n',則不進行翻譯。
如果 newline 是任何其他合法值,則寫入的任何 '\n' 字元將被轉換為給定的字串。
模式描述t
文字模式 (預設)。
x寫模式,新建乙個檔案,如果該檔案已存在則會報錯。
b二進位制模式。
+開啟乙個檔案進行更新(可讀可寫)。
u通用換行模式(python 3 不支援)。
r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。
rbr+
開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。
rb+w
開啟乙個檔案只用於寫入。如果該檔案已存在則開啟檔案,並從開頭開始編輯,即原有內容會被刪除。如果該檔案不存在,建立新檔案。
wbw+
開啟乙個檔案用於讀寫。如果該檔案已存在則開啟檔案,並從開頭開始編輯,即原有內容會被刪除。如果該檔案不存在,建立新檔案。
wb+a
開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
ab以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。
a+開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。
ab+以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。
python建立新檔案 python建立和刪除檔案
usr bin python coding utf 8 指定編碼格式,python預設unicode編碼 import os directory dir os.chdir directory 切換到directory目錄 cwd os.getcwd 獲取當前目錄即dir目錄下 print curre...
python 檔案操作之開啟檔案
系統的內建函式中給我們提供了乙個開啟檔案的函式open open函式需要傳入的引數有file mode buffering encoding errors newline closefd 目前這個階段,我們只需要關係file和mode引數 file 要開啟檔案的名稱或路徑 當要開啟的檔案與當前程式檔...
C 檔案操作 建立和刪除資料夾
1 採用createdirectory函式 cstring strpath getmodulefilename null,strpath.getbuffersetlength max path 1 max path strpath.releasebuffer int pos strpath.reve...