您好,登錄后才能下訂單哦!
本篇內容介紹了“python的文件操作方法有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
使用try-finally方式
try: f = open('/path/to/file', mode='r') print(f.read()) finally: f.close()
使用with方式,強烈建議使用這種方式!
with open('/path/to/file', mode='r') as f: print(f.read())
補充內容:
用with方式可以一條語句同時打開多個文件,具體案例請看“文件的修改”。
open()方法常見參數:
第一個參數是要打開的文件,在當前路徑的可以只寫文件名,不在當前路徑的要寫完整路徑名文件名。
第二個參數encoding,指定文件解碼方式,案例請看“文件的修改”。
第三個參數mode,指定文件的操作模式。
r ,只讀方式打文本文件。這是默認模式。
rb,只讀方式打開二進制文件(如圖片、聲音、視頻)。
r+,讀寫方式打開文本文件。
rb+,讀寫方式打開二進制文件。
w,只寫方式打開文本文件。
wb,只寫方式打開二進制文件。
w+,讀寫方式打開文本文件。
wb+,讀寫方式打開二進制文件。
a,只寫方式打文本文件。
ab,只寫方式打二進制文件。
a+,讀寫方式打文本文件。
ab+,讀寫方式打二進制文件。
read()方法,讀取二進制文件或文本文件。
read(n),參數n指定讀取多少字節,無參數則表示讀取全部內容。
readline()方法,讀取文本文件一行內容至換行符止(含換行符)。
readlines()方法,讀取文本文件所有內容到列表,一行內容對應一個列表元素(含換行符)。
for循環讀取文本文件。大文件強烈建議使用這種方式!文件句柄也是對象,可以用for循環逐行讀取,另外可以配合"yield"逐行讀取文件并逐行返回處理。
with open('a.txt', encoding='utf8') as f: for line in f: print(line,end='')
write()方法寫入文件內容
文本文件寫入使用 f.write( str )
二進制文件寫入使用 f.write( b'bytes')
寫入時是暫存緩沖區,并沒有真正寫入磁盤,只有在文件關閉時才會寫到磁盤上。另外可以通過f.flush()方法將緩沖區內容立即到磁盤。
tell() # 獲取光標位置,單位是字節
seek() # 調整光標位置,單位是字節
seek(0, 0) # 移動到文件頭 seek(0, 2) # 移動到文件尾
只讀模式打開原文件
只寫方式創建新文件(通常命名是原文件最后加.bak)
讀取原文件內容到內存,將內容進行修改后保存到新文件。
將原文件刪除。
將新文件重命名為原文件。
代碼示例如下:
with open('原文件.txt', encoding='utf8') as f1, \ open('原文件.txt.bak', encoding='utf8', mode='w') as f2: for txt in f1: new_content = txt.replace('python', 'PYTHON') f2.write(new_content) os.remove('原文件.txt') os.rename('原文件.txt.bak', '原文件.txt')
“python的文件操作方法有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。