1. 程式人生 > >python 對於檔案的操作

python 對於檔案的操作

一、開啟

第一種方式:

f = open('passwd','r')

第二種方式:

with open('passwd') as f:
        line = f.read()
        print line

二、讀寫

content = f.read()
f.write('abc')
print content

三、關閉

f.close

四、檔案的屬性 r   只能讀,不能寫,檔案不存在會出錯 r+ 可以讀,可以寫,檔案不存在會報錯,檔案存在會將寫入內容追加在檔案裡

w  只能寫,不能讀,檔案存在會覆蓋檔案內容,檔案不存在會新建檔案 w+ 可以寫,可以讀,檔案存在會覆蓋檔案內容,檔案不存在會新建檔案

a  只能寫,不能讀,檔案不存在會新建檔案,檔案存在會將寫入內容追加在檔案裡, a+ 可以寫,可以讀,檔案不存在會新建檔案,檔案存在會將寫入內容追加在檔案裡,

五、檔案指標 1.標記從哪個位置開始讀取資料 2.第一次開啟檔案時,通常檔案指標會指向檔案的開始位置 3.當執行了read方法後,檔案指標會指向讀取內容的末尾 4.移動檔案指標到檔案開頭 file.seek(0)

六、檔案的複製 1.開啟一個已經有的檔案,讀取完整的內容,並寫到另一個檔案中 2.原始檔以只讀的方式開啟

f_read = open('passwd')

3.目標檔案以只寫的方式開啟

f_write = open('passwdcopy','w')

4.從原始檔讀取內容

text = f_read.read()

5.將讀取到的內容寫到目標檔案

f_write.write(text)

6.關閉兩個檔案  

f_read.close()
f_write.close()

七、正確讀取大檔案 1.開啟檔案

file = open('passwd')

2.設定無限迴圈,因為我們不知道迴圈的條件,不知道檔案到底有多少行

while True:
    text = file.readline()  #一行一行讀取
    if not text:  #判斷是否讀取到了內容,如果檔案指標到檔案最後一行,那麼就讀取不到內容了
            break
    print text

4.關閉檔案  

file.close()

八、二進位制檔案的複製 1.讀取二進位制檔案的內容 # rb wb ab rb+ wb+ ab+  

f1 = open('good.jpg',mode='rb')
content = f1.read()
f1.close

2.寫入目標檔案

f2 = open('happy.png',mode='wb')
f2.write(content)
f2.close