1. 程式人生 > >python——File用法

python——File用法

1、file 開啟檔案

open()函式

作用:開啟檔案,建立一個file 物件。

語法: 

     file object= open(file_name [, access_mode][, buffering])

其中: file_name : 是一個包含了需要訪問的檔名的字串值。

            access_mode : 決定了開啟檔案的模式: 只讀、寫入、追加  ,預設檔案訪問模式是隻讀(r)

            buffering : if  buffering ==0 ,則不會寄存,bufferiing =1 ,檔案會寄存行。if buffering>1 的整數,表明了寄存區的緩衝大小。if                             buffering <0 ,寄存區的緩衝大小為系統預設。

例子:

結果:

123456789
abcdef
youaremyself

file 物件的屬性:當檔案被開啟後,就有了一個file 物件,可以獲取file的各種相關資訊。


例子:

結果:

123456789
abcdef
youaremyself
rb
1.txt
0
False
True

2.file讀檔案

(1)read()作用:從一個開啟的檔案讀取一個字串

方法:file.read(count);

count: 是要從已開啟檔案中讀取的位元組計數。該方法從檔案的開頭開始讀入,如果沒有傳入count,它會嘗試儘可能多地讀取更多的內容,很可能是直到檔案的末尾。

(2)readlines()

作用:用於讀取所以行(直到結束符EOF),並返回列表。該列表可由for 語句處理。

讀取檔案內容,檔案內容的每一行都是一個字串,最後返回一個list

語法:file.readlines()

返回值: 列表,包含所有行

例子:

結果:['123456789\r\n', 'abcdef\r\n', 'youaremyself']

3. readline()

作用:用於從檔案中讀取一行,返回一個字串。包括“\n”.如果指定了一個非負數的引數,則返回指定大小的位元組數,包括 "\n" 字元

語法:file.readline()

返回值: 返回從字串中讀取的位元組

例子:

結果:123456789


結果:

123456789
abcdef
youaremyself

總結: readlines 與readline  的區別,readlines 主要是讀取檔案內容的所有內容,且,每一行都是一個字串,最後返回一個list。 而readline是讀取檔案內容的某一行,返回一個字串。

3、file 寫檔案

write()方法可以將任何字串寫入一個開啟的檔案。該方法不會再字串的結尾新增換行符(“\n”)

語法: file.write(string)

string : 是要寫入到已經開啟檔案的內容

writelines()

作用: 用於向檔案中寫入一序列的字串。這一序列字串可以是迭代物件產生的,如字串列表。換行需制定換行符\n

語法:file.writlines(str)

str--要寫入的字串序列

返回值: 無

4. file 常用方法

1.flush()用來重新整理緩衝區,即將緩衝區的內容立刻寫入檔案,同時清空緩衝區,不需要是被動的等待輸出緩衝區

一般,檔案關閉後自動重新整理緩衝區。但有時你需要在關閉前重新整理它,這時就可以使用 flush() 方法

語法:file.flush()

返回值:無

2.tell ()

作用: 返回檔案的當前位置,即檔案指正當前位置

語法: file.tell(offset[, where])

返回值:檔案位置

3.next()

作用:讀取檔案的下一行內容,返回一個字串。

語法: file.next()

返回值: 返回檔案的下一行