天天看點

Python 檔案操作

 1.檔案讀寫過程

    1. 打開檔案

    2. 向檔案中寫入内容;

    3. 關閉檔案

<a href="https://s3.51cto.com/wyfs02/M00/9B/EE/wKiom1lozQvxE-OkAAAZ8UD4Btg732.png" target="_blank"></a>

 2.檔案讀寫

  如果檔案很小, read() 一次性讀取最友善;

  如果不能确定檔案大小,反複調用 read(size)

  比較保險;如果是配置檔案,調用 readlines()

  二進制檔案,用‘rb’模式打開即可

<a href="https://s3.51cto.com/wyfs02/M01/9B/ED/wKioL1lozWXwanXWAAAbhFv6s60485.png" target="_blank"></a>

 3.open函數的模式

     r 以讀的方式打開,定位到檔案開頭 , 預設的 mode

    r+ 以讀寫的方式打開,定位檔案開頭 , 可以寫入内容到檔案

    w 以寫的方式打開,打開檔案的時候會清空檔案的内容,并且不能讀

    w+ 以讀寫的方式打開,定位到檔案頭,并且打開檔案的時候也會清空檔案的内容

    a 以寫的方式打開,定位到檔案的末尾,是一個追加的操作 , 但并不允許讀

    a+ 以讀寫的方式打開,定位到檔案的末尾,追加的方式

<a href="https://s3.51cto.com/wyfs02/M01/9B/ED/wKioL1lozgnyVGCcAAAbhFv6s60323.png-wh_500x0-wm_3-wmp_4-s_2760880331.png" target="_blank"></a>

<a href="https://s5.51cto.com/wyfs02/M00/9B/EE/wKiom1lozjywt411AABpNx0otYA449.png" target="_blank"></a>

<a href="https://s5.51cto.com/wyfs02/M00/9B/ED/wKioL1lozj2zrv6lAAAVthRL4tg657.png" target="_blank"></a>

  4.檔案的其他操作

    f.flush()函數,将緩沖區的内容寫入到硬碟中

   f.seek(offset[,whence]),offset 表示移動多少位元組, whence 為 1 的時候表示相對于目前位置移動的;當 2 的時候從檔案的末尾往後移動,但不一定所有的平台都支援;預設為 0 表示從檔案開頭往後移動

    f.tell()函數,傳回目前檔案指針的偏移量

<a href="https://s3.51cto.com/wyfs02/M01/9B/ED/wKioL1lozsihI7e_AAAaCdsByjw728.png" target="_blank"></a>

<a href="https://s3.51cto.com/wyfs02/M02/9B/EE/wKiom1lozsihCq4KAAAT8cCYYwQ242.png" target="_blank"></a>

  5.with文法

   一般情況打開一個檔案,經過操作之後,都要顯式的執行xx.close() 将檔案關閉 .with 用于需要打開、關閉成對的操作,可以自動關閉打開對象。

<a href="https://s1.51cto.com/wyfs02/M00/9B/EE/wKiom1lozzuSFCOaAAAy0dB2OGM122.png" target="_blank"></a>

本文轉自  red777    51CTO部落格,原文連結:http://blog.51cto.com/12314711/1947709