文件打開模式
打開模式 | 執行操作 |
---|---|
‘r’ | 以只讀方式打開文件(默認) |
‘rb’ | 以二進制格式打開一個文件用於只讀。文件指針將會放在文件的開頭。這是默認模式。 |
‘r+’ | 打開一個文件用於讀寫。文件指針將會放在文件的開頭。 |
‘rb+’ | 以二進制格式打開一個文件用於讀寫。文件指針將會放在文件的開頭。 |
‘w’ | 以寫入的方式打開文件,會覆蓋已存在的文件 |
‘wb’ | 以二進制格式打開一個文件只用於寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 |
‘w+’ | 打開一個文件用於讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 |
‘wb+’ | 以二進制格式打開一個文件用於讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 |
‘x’ | 如果文件已經存在,使用此模式打開將引發異常 |
‘a’ | 以寫入模式打開,如果文件存在,則在末尾追加寫入 |
‘ab’ | 以二進制格式打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。 |
‘b’ | 以二進制模式打開文件 |
‘t’ | 以文本模式打開(默認) |
‘+’ | 可讀寫模式(可添加到其他模式中使用) |
‘U’ | 通用換行符支持 |
文件對象方法
文件對象方法 | 執行操作 |
---|---|
f.close() | 關閉文件 |
f.read([size=-1]) | 從文件讀取size個字符,當未給定size或給定負值的時候,讀取剩余的所有字符,然後作為字符串返回 |
f.readline([size=-1]) | 從文件中讀取並返回一行(包括行結束符),如果有size有定義則返回size個字符 |
f.write(str) | 將字符串str寫入文件 |
f.writelines(seq) | 向文件寫入字符串序列seq,seq應該是一個返回字符串的可叠代對象 |
f.seek(offset, from) | 在文件中移動文件指針,從from(0代表文件起始位置,1代表當前位置,2代表文件末尾)偏移offset個字節 |
f.tell() | 返回當前在文件中的位置 |
f.truncate([size=file.tell()]) | 截取文件到size個字節,默認是截取到文件指針當前位置 |
file.flush() | 刷新文件內部緩衝,直接把內部緩衝區的數據立刻寫入文件, 而不是被動的等待輸出緩衝區寫入。 |
file.isatty() | 如果文件連接到一個終端設備返回True,否則返回False。 |
file.next() | 返回文件下一行。 |