python 檔案操作

2022-08-15 21:42:11 字數 2972 閱讀 7766

檔案操作也就讀操作和寫操作了,我們乙個乙個來說。。

其實和在日常我們在使用檔案時是一樣的,不過讀檔案還是寫檔案,第一件事情就是開啟檔案。

fileread = open('

/test.txt

' , '

r') #r 表示開啟檔案的格式是讀模式

open()是python的內建函式,如果檔案不存在會丟擲異常「ioerror」。

一般情況下,小檔案可以直接使用read()方法讀取,一次將檔案的內容全部讀到記憶體中,返回的是str 型別。

但有時候檔案內容可能會很大,如果一次性讀入記憶體會卡死的,這個時候就可以使用read(size)或者readline()。 size 指定每次讀取的位元組數。通過多次迴圈獲取檔案的全部內容。

for line in fileread.readlines(): #

逐行讀取

print(line)

最後,一定不要忘記關閉檔案。切記切記切記!

fileread.close()

類似讀模式,寫檔案開啟檔案時也需要定義為w(寫)模式,但是此時的開啟檔案並不是真正意義上的開啟,而是建立乙個新的檔案,如果之前存在此檔名,原檔案將被現檔案覆蓋。

loginfile = open("

login.txt

", "w"

) loginfile.write(

"寫入第一行\n")

loginfile.write(

"寫入第二行\n")

loginfile.close()

此時開啟login.txt檔案,發現以前的內容已沒有,內容如下:

寫入第一行

寫入第二行

那有人問了,我怎麼更新檔案。當然,python提供的模式還有乙個叫追加(a)模式。此模式下write()的內容都會更新原有內容之後。  

loginfile = open("

login.txt

", "a"

) loginfile.write(

"寫入第3行\n")

loginfile.close()

此時再開啟login檔案你就會看到:

寫入第一行

寫入第二行

寫入第3行

但是,如果要修改檔案我該怎麼辦了,有沒有這種模式呢。呵呵。。當然--沒有的。那麼怎麼修改呢,那只能先修改到乙個中間檔案中,然後再寫回來了。**如下:  

1 loginfile = open("

login.txt

", "r"

) # 開啟原檔案

2 loginfileupdate = open("

loginupdate.txt

", "w"

) #建立乙個中間檔案

3for line in

loginfile:

4if username in

line: #找到修改位置進行修改

5 line = '

i am newuser'6

loginfileupdate.write(line)

7loginfile.close()

8loginfileupdate.close()9#

將中間檔案的內容回寫到原配置檔案

10 loginfile = open("

login.txt

", "w"

)11 loginfileupdate = open("

loginupdate.txt

", "r"

)12for line in

loginfileupdate:

13loginfile.write(line)

14loginfile.close()

15 loginfileupdate.close()

不同模式開啟檔案的完全列表:

模式描述

r以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。

rb以二進位制格式開啟乙個檔案用於唯讀。檔案指標將會放在檔案的開頭。這是預設模式。

r+開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。

rb+以二進位制格式開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。

w開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

wb以二進位制格式開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

w+開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

wb+以二進位制格式開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

a開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。

ab以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。

a+開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。

ab+以二進位制格式開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。

屬性描述

file.closed

返回true如果檔案已被關閉,否則返回false。

file.mode

返回被開啟檔案的訪問模式。

file.name

返回檔案的名稱。

file.softspace

如果用print輸出後,必須跟乙個空格符,則返回false。否則返回true。

python 檔案操作

簡明 python 教程 中的例子,python 執行出錯,用open代替file 可以執行。poem programming is fun when the work is done if you wanna make your work also fun use python f open e ...

python檔案操作

1,將乙個路徑名分解為目錄名和檔名兩部分 a,b os.path.split c 123 456 test.txt print a print b 顯示 c 123 456 test.txt 2,分解檔名的副檔名 a,b os.path.splitext c 123 456 test.txt pri...

Python 檔案操作

1.開啟檔案 如下 f open d test.txt w 說明 第乙個引數是檔名稱,包括路徑 第二個引數是開啟的模式mode r 唯讀 預設。如果檔案不存在,則丟擲錯誤 w 只寫 如果檔案 不存在,則自動建立檔案 a 附加到檔案末尾 r 讀寫 如果需要以二進位制方式開啟檔案,需要在mode後面加上...