Python 7天快速入門完整視頻教程:https://www.bilibili.com/video/BV1o84y1Z7J1
Python 文件IO操作
Python的內(nèi)置庫提供了對文件的IO操作。
可以對文件進行打開,讀,寫,關(guān)閉等操作。
文件讀取操作
你必須先用Python內(nèi)置的open()函數(shù)打開一個文件,創(chuàng)建一個file對象,相關(guān)的方法才可以調(diào)用它進行讀寫。
file object = open(file_name ,mode,encoding)
filename:一個包含了你要訪問的文件名稱的字符串值,要求是全路徑,如r"e:\xxx.txt"或者"e:\xxx.txt"
mode:文件的訪問模式,只讀,寫入,追加等
encoding:讀取數(shù)據(jù)的編碼格式,只有文本文件時才能加該參數(shù)
mode是文件的讀寫方式:
r:只讀模式,不能寫入,默認的格式,必須是文件已經(jīng)存在
w:只寫模式,覆蓋寫入,如果文件不存在,創(chuàng)建文件并寫入
a:追加寫入,在原來文件內(nèi)容的基礎(chǔ)上,繼續(xù)寫入數(shù)據(jù)
r+:讀寫模式,需要文件已存在
w+:讀寫模式,文件可以不存在,它可以先創(chuàng)建、再讀寫
b:二進制讀寫,對非文本文件的讀寫
打開文件open
f = open("D:/測試.txt", "r", encoding="UTF-8")
print(type(f))
讀取文件 read()
print("讀取15個字節(jié)", f.read(15))
print("讀取全部內(nèi)容", f.read())
讀取文件全部行,返回列表 readlines()
lines = f.readlines()
print(type(lines))
print(lines)
for line in lines:
print(line, end='')
逐行讀取 readline()
print(f.readline(), end='')
print(f.readline(), end='')
print(f.readline(), end='')
line = f.readline()
while line:
print(line, end='')
line = f.readline()
簡化的for遍歷
for line in f:
print(line, end='')
關(guān)閉文件對象 結(jié)束IO操作
f.close()
前面讀取文件方式,都是需要顯示的調(diào)用close()方法,關(guān)閉文件對象。有時候?qū)懘a,忘記關(guān)閉,那就麻煩了。
所以python提供了一種自動關(guān)閉文件對象的操作方式。with open
with open("D:/測試.txt", "r", encoding="UTF-8") as f:
for line in f:
print(line, end='')
執(zhí)行完后,自動關(guān)閉文件對象