Python知識(shí)分享網(wǎng) - 專(zhuān)業(yè)的Python學(xué)習(xí)網(wǎng)站 學(xué)Python,上Python222
Python 文件IO操作
發(fā)布于:2023-09-13 10:26:44

Python 7天快速入門(mén)完整視頻教程https://www.bilibili.com/video/BV1o84y1Z7J1

 

 

Python   文件IO操作

 

 

Python的內(nèi)置庫(kù)提供了對(duì)文件的IO操作。

可以對(duì)文件進(jìn)行打開(kāi),讀,寫(xiě),關(guān)閉等操作。

 

文件讀取操作

你必須先用Python內(nèi)置的open()函數(shù)打開(kāi)一個(gè)文件,創(chuàng)建一個(gè)file對(duì)象,相關(guān)的方法才可以調(diào)用它進(jìn)行讀寫(xiě)。

 

file object = open(file_name ,mode,encoding)

 

filename:一個(gè)包含了你要訪(fǎng)問(wèn)的文件名稱(chēng)的字符串值,要求是全路徑,如r"e:\xxx.txt"或者"e:\xxx.txt"

mode:文件的訪(fǎng)問(wèn)模式,只讀,寫(xiě)入,追加等

encoding:讀取數(shù)據(jù)的編碼格式,只有文本文件時(shí)才能加該參數(shù)

mode是文件的讀寫(xiě)方式:

r:只讀模式,不能寫(xiě)入,默認(rèn)的格式,必須是文件已經(jīng)存在

w:只寫(xiě)模式,覆蓋寫(xiě)入,如果文件不存在,創(chuàng)建文件并寫(xiě)入

a:追加寫(xiě)入,在原來(lái)文件內(nèi)容的基礎(chǔ)上,繼續(xù)寫(xiě)入數(shù)據(jù)

r+:讀寫(xiě)模式,需要文件已存在

w+:讀寫(xiě)模式,文件可以不存在,它可以先創(chuàng)建、再讀寫(xiě)

b:二進(jìn)制讀寫(xiě),對(duì)非文本文件的讀寫(xiě)

 

打開(kāi)文件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ì)象

 

 

轉(zhuǎn)載自: