1. 程式人生 > >python文件流操作

python文件流操作

文件流 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文件流操作