python文件流操作
阿新 • • 發佈:2019-03-05
文件流 url read python 文件 文件處理 表格 file 文件的
博主在學習python時對文件進行操作時經常踩一下坑。所以專門梳理了一下。有問題麻煩指出哈。 python對於文件的操作我們一般是用open()。我們根據python的源碼可以看出。我們必須要傳的參是file即打開文件的URL。同時open方法默認是是r的打開方式即只讀。
open()方法舉例
f=open(‘test.txt‘,encoding=‘utf-8‘) #打開文件 data=f.read() #文件操作 print(data) f.close() #關閉文件
當然其他的打開方法
# r 以只讀方式打開文件。這是默認模式。文件必須存在,不存在拋出錯誤 #rb 以二進制格式打開一個文件用於只讀。 #r+ 打開一個文件用於讀寫。文件指針將會放在文件的開頭。讀完就追加。 #w 打開一個文件只用於寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 #w+ 打開一個文件用於讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 #a 打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。 #a+ 打開一個文件用於讀寫。如果該文件已存在,文件指針將會放在文件的結尾。文件打開時會是追加模式。如果該文件不存在,創建新文件用於讀寫。
註:後面有帶b的方式,不需要考慮編碼方式。有帶+號的,則可讀可寫,不過它們之間還是有區別的 例如Wb就是以二進制形式進行寫入
這裏就不一一舉例了。
對於文件的讀取有以下幾個方法
read(n):如果不傳值得話就讀取所有的內容,傳值的話可以讀取指定的內容
readline():按行讀取內容
readlines():讀取多行內容並以表格形式返回
寫入
write()
作者在這裏曾經遇到一個小糾結點 按行寫入怎麽寫呢。後面看了別人的寫法才轉過灣。加一個/n就可以了
例如
f = open("test.txt","a+")
list =[1,2,3]
for i in list:
f.write(str(i))
f.write("\n") #寫入換行符號f.close()
這些就是作者對於python 文件處理的總結
python文件流操作