檔案處理是任何Web應用程式的重要部分。Python有多個用於建立、讀取、更新和刪除檔案的函數。
在Python中處理檔案的關鍵函數是open()函數。open()函數接受兩個引數:檔名和模式。
有四種不同的方法(模式)可以開啟檔案:
此外,您可以指定檔案是二進位制模式還是文字模式:
要開啟一個檔案進行讀取,只需指定檔案的名稱:
f = open("demofile.txt")
上述程式碼與以下程式碼等效:
f = open("demofile.txt", "rt")
因為"r"表示讀取,"t"表示文字,它們是預設值,您不需要指定它們。
開啟伺服器上的檔案
假設我們有以下檔案,位於與Python相同的資料夾中:
demofile.txt
Hello! Welcome to demofile.txt
This file is for testing purposes.
Good Luck!
要開啟該檔案,使用內建的open()函數。
open()函數返回一個檔案物件,該物件具有用於讀取檔案內容的read()方法:
f = open("demofile.txt", "r")
print(f.read())
如果檔案位於不同的位置,您將不得不指定檔案路徑,如下所示:
f = open("D:\\myfiles\\welcome.txt", "r")
print(f.read())
唯讀取檔案的一部分
預設情況下,read()方法返回整個文字,但您也可以指定要返回多少個字元:
f = open("demofile.txt", "r")
print(f.read(5))
您可以使用readline()方法返回一行:
f = open("demofile.txt", "r")
print(f.readline())
通過呼叫readline()兩次,您可以讀取前兩行:
f = open("demofile.txt", "r")
print(f.readline())
print(f.readline())
通過迴圈遍歷檔案的各行,您可以一行一行地讀取整個檔案:
f = open("demofile.txt", "r")
for x in f:
print(x)
最佳實踐是在使用完檔案後始終關閉它。
f = open("demofile.txt", "r")
print(f.readline())
f.close()
要寫入現有檔案,您必須向open()函數新增一個引數:
f = open("demofile2.txt", "a")
f.write("Now the file has more content!")
f.close()
要檢查檔案是否位於不同的位置,您將不得不指定檔案路徑,如下所示:
f = open("demofile3.txt", "w")
f.write("Woops! I have deleted the content!")
f.close()
注意:使用"w"方法將覆蓋整個檔案。
要在Python中建立新檔案,請使用open()方法,使用以下引數之一:
f = open("myfile.txt", "x")
結果:建立了一個新的空檔案!
f = open("myfile.txt", "w")
要刪除檔案,您必須匯入OS模組,並執行其os.remove()函數:
import os
os.remove("demofile.txt")
檢查檔案是否存在:
為了避免出現錯誤,您可能希望在嘗試刪除檔案之前檢查檔案是否存在:
import os
if os.path.exists("demofile.txt"):
os.remove("demofile.txt")
else:
print("The file does not exist")
要刪除整個資料夾,請使用os.rmdir()方法:
import os
os.rmdir("myfolder")
為了方便其他裝置和平臺的小夥伴觀看往期文章:公眾號搜尋Let us Coding
,或者掃描下方二維條碼,關注公眾號,即可獲取最新文章。
看完如果覺得有幫助,歡迎點贊、收藏和關注