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