python-基礎-檔案操作

來源:互聯網
上載者:User

標籤:指標   程式   key   畢業   std   圖片   檔案   寫檔案   擷取   

1 檔案的開啟和關閉

開啟

在python,使用open函數,可以開啟一個已經存在的檔案,或者建立一個新檔案

open(檔案名稱,訪問模式)

樣本如下:

    f = open(‘test.txt‘, ‘w‘)

說明:

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

開啟一個檔案只用於寫入。

如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

a

開啟一個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。

也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。

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

以二進位格式開啟一個檔案只用於寫入。

如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

ab

以二進位格式開啟一個檔案用於追加。

如果該檔案已存在,檔案指標將會放在檔案的結尾。

也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。

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

開啟一個檔案用於讀寫。

如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

a+

開啟一個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。

檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。

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

以二進位格式開啟一個檔案用於讀寫。

如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。

ab+

以二進位格式開啟一個檔案用於追加。如果該檔案已存在,

檔案指標將會放在檔案的結尾。如果該檔案不存在,建立新檔案用於讀寫。

關閉檔案

close( )

樣本如下:

# 建立一個檔案,檔案名稱為:test.txt    f = open(‘test.txt‘, ‘w‘)    # 關閉這個檔案    f.close()

 

2 檔案的讀寫

 

 

 

 3 檔案的定位讀寫

<1>擷取當前讀寫的位置

在讀寫檔案的過程中,如果想知道當前的位置,可以使用tell()來擷取

    # 開啟一個已經存在的檔案    f = open("test.txt", "r")    str = f.read(3)    print "讀取的資料是 : ", str    # 尋找當前位置    position = f.tell()    print "當前檔案位置 : ", position    str = f.read(3)    print "讀取的資料是 : ", str    # 尋找當前位置    position = f.tell()    print "當前檔案位置 : ", position    f.close()

 

<2>定位到某個位置

如果在讀寫檔案的過程中,需要從另外一個位置進行操作的話,可以使用seek()

seek(offset, from)有2個參數

  • offset:位移量
  • from:方向
    • 0:表示檔案開頭
    • 1:表示當前位置
    • 2:表示檔案末尾

demo:把位置設定為:從檔案開頭,位移5個位元組

    # 開啟一個已經存在的檔案    f = open("test.txt", "r")    str = f.read(30)    print "讀取的資料是 : ", str    # 尋找當前位置    position = f.tell()    print "當前檔案位置 : ", position    # 重新設定位置    f.seek(5,0)    # 尋找當前位置    position = f.tell()    print "當前檔案位置 : ", position    f.close()

 

demo:把位置設定為:離檔案末尾,3位元組處

    # 開啟一個已經存在的檔案    f = open("test.txt", "r")    # 尋找當前位置    position = f.tell()    print "當前檔案位置 : ", position    # 重新設定位置    f.seek(-3,2)    # 讀取到的資料為:檔案最後3個位元組資料    str = f.read()    print "讀取的資料是 : ", str    f.close()
4 檔案的重新命名、刪除

有些時候,需要對檔案進行重新命名、刪除等一些操作,python的os模組中都有這麼功能

<1>檔案重新命名

os模組中的rename()可以完成對檔案的重新命名操作

rename(需要修改的檔案名稱, 新的檔案名稱)

    import os    os.rename("畢業論文.txt", "畢業論文-最終版.txt")

<2>刪除檔案

os模組中的remove()可以完成對檔案的刪除操作

remove(待刪除的檔案名稱)

    import os    os.remove("畢業論文.txt")
檔案夾的相關操作

實際開發中,有時需要用程式的方式對檔案夾進行一定的操作,比如建立、刪除等

就像對檔案操作需要os模組一樣,如果要操作檔案夾,同樣需要os模組

<1>建立檔案夾

    import os    os.mkdir("張三")

<2>擷取目前的目錄

    import os    os.getcwd()

<3>改變預設目錄

    import os    os.chdir("../")

<4>擷取目錄列表

    import os    os.listdir("./")

<5>刪除檔案夾

    import os    os.rmdir("張三")

 

python-基礎-檔案操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.