Python不歸路_文件操作(一)
Python文件操作
Python文件操作的語法是:
open(file,mode,buffering,encoding,erros,newline,closefd)
我們先來看下各個參數,
file:很明顯,輸入文件的路徑。
mode:mode參數有很多
r | 以只讀方式打開文件,默認參數 |
r+ | 以讀寫方式打開文件 |
w | 以寫入方式打開文件,如果文件存在,先刪除原文件,再創建文件;如果文件不存在直接創建 |
w+ | 以讀寫方式打開文件,如果文件存在,先刪除原文件,再創建文件;如果文件不存在直接創建 |
a | 以追加方式打開文件,如果文件存在,將內容追加在末尾,不管指針位於文件任何處,如果文件不存在直接創建 |
a+ | 以讀寫方式追加內容至文件 |
rb | 以二進制方式,只讀打開文件 |
wb | 以二進制方式,寫入打開文件 |
ab | 以二進制方式,追加文件 |
rb+ | 以二進制方式,讀寫打開文件 |
wb+ | 以二進制方式,讀寫打開文件 |
ab+ | 以二進制方式,讀寫打開文件 |
encoding:編碼,這個需要註意!在前面的文件我們說過,Pycharm中,默認的字符編碼為utf-8,但是如果要打開文件的字符編碼不是utf-8的話,將出現亂碼,如果要正常顯示的話,需要使用encoding參數指定字符編碼。
文件方法
read():讀取文件,如果()不帶任何參數,則讀取全部內容,如果()帶參數,則讀取參數之前的內容。比如f.read(5)表示讀取第1到第5個字符。
readline():讀取一行文字內容,如果()不帶任何參數,則讀取一行,如果()帶參數,則讀取多行。
readlines():讀取一行或多行文字內容,並以列表方式存儲。如果()不帶任何參數,則讀取全部,如果()帶參數,則讀取多行。比如f.readlines(4),因為readlines()方法將文字內容以列表方式存儲,所以()中的4代表列表的索引,在這裏輸出結果是第5行文字。readlines()可以使用for叠代厲遍所有內容,for lines in f.readlines():print(lines)
write():寫入文字內容,f.write(‘abcdefg‘),需要註意f的模式‘r‘,‘r+‘,‘w‘,‘w+‘等
close():關閉,為了節約系統資源,文件打開後記得關閉。可以使用with open() as f:語句強制關閉文件,不管是否有錯誤。
tell():返回當前光標位置
seek():移動光標位置f.seek(0,0)有兩個參數,第一個0代表移動位數,第二參數有三個選項0代表開頭,1代表當前位置,2代表末尾
flush():刷新文件內容。Python中向文件中寫入內容采用異步存儲方式,先將寫入內容存入緩存中,當緩存容量滿時,一並寫入文件。flush()的作用是將內容強制寫入文件。
writable():是否可寫
readable():是否可讀
closed():是否關閉
-------不會開發的運維不是好廚師
Python不歸路_文件操作(一)