天天看點

python: IO操作

基本讀寫函數

function annotations
open() 打開檔案
read([size]) 從檔案 目前位置 起讀出size個位元組;若無參數size,則表示讀取至檔案結束為止。傳回一個str
readline() 每次讀出一行内容。傳回一個str
readlines() 一次讀出檔案的所有行,儲存在一個list中,每行作為一個元素。傳回一個list
linecache.getline(‘1.txt’, 2) 讀出檔案的第2行。傳回一個str
write() 将str(而不是數字)寫入一個打開的檔案。不會自動在字元串的結尾添加換行符(‘\n’)
writelines() 将list(也可以是str)寫入一個打開的檔案。不會自動在字元串的結尾添加換行符(‘\n’)
close() 關閉檔案

打開檔案的模式

Mode Annotations
r 以隻讀方式打開檔案。檔案的指針将會放在檔案的開頭。這是預設模式。
rb 以二進制格式打開一個檔案用于隻讀。檔案指針将會放在檔案的開頭。這是預設模式。
r+ 打開一個檔案用于讀寫。檔案指針将會放在檔案的開頭。
rb+ 以二進制格式打開一個檔案用于讀寫。檔案指針将會放在檔案的開頭。
w 打開一個檔案隻用于寫入。如果該檔案已存在則将其覆寫。如果該檔案不存在,建立新檔案。
wb 以二進制格式打開一個檔案隻用于寫入。如果該檔案已存在則将其覆寫。如果該檔案不存在,建立新檔案。
w+ 打開一個檔案用于讀寫。如果該檔案已存在則将其覆寫。如果該檔案不存在,建立新檔案。
wb+ 以二進制格式打開一個檔案用于讀寫。如果該檔案已存在則将其覆寫。如果該檔案不存在,建立新檔案。
a 打開一個檔案用于追加。如果該檔案已存在,檔案指針将會放在檔案的結尾。也就是說,新的内容将會被寫入到已有内容之後。如果該檔案不存在,建立新檔案進行寫入。
ab 以二進制格式打開一個檔案用于追加。如果該檔案已存在,檔案指針将會放在檔案的結尾。也就是說,新的内容将會被寫入到已有内容之後。如果該檔案不存在,建立新檔案進行寫入。
a+ 打開一個檔案用于讀寫。如果該檔案已存在,檔案指針将會放在檔案的結尾。檔案打開時會是追加模式。如果該檔案不存在,建立新檔案用于讀寫。
ab+ 以二進制格式打開一個檔案用于追加。如果該檔案已存在,檔案指針将會放在檔案的結尾。如果該檔案不存在,建立新檔案用于讀寫。

檔案對象的屬性

Attributes Annotations
file.closed 傳回true如果檔案已被關閉,否則傳回false。
file.mode 傳回被打開檔案的通路模式。
file.name 傳回檔案的名稱。
file.softspace 如果用print輸出後,必須跟一個空格符,則傳回false。否則傳回true。

Example:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 打開一個檔案
file = open("1.txt", "w")
print "檔案名: ", file.name
print "是否已關閉 : ", file.closed
print "通路模式 : ", file.mode
print "末尾是否強制加空格 : ", file.softspace           

複制

Output:

檔案名:  1.txt
是否已關閉 :  False
通路模式 :  w
末尾是否強制加空格 :  0           

複制