標籤:
python進行檔案讀寫的函數是open或file
file_handler = open(filename,,mode)
Table mode
模式 |
描述 |
r |
以讀方式開啟檔案,可讀取檔案資訊。 |
w |
以寫方式開啟檔案,可向檔案寫入資訊。如檔案存在,則清空該檔案,再寫入新內容 |
a |
以追加模式開啟檔案(即一開啟檔案,檔案指標自動移到檔案末尾),如果檔案不存在則建立 |
r+ |
以讀寫方式開啟檔案,可對檔案進行讀和寫操作。 |
w+ |
消除檔案內容,然後以讀寫方式開啟檔案。 |
a+ |
以讀寫方式開啟檔案,並把檔案指標移到檔案尾。 |
b |
以二進位模式開啟檔案,而不是以文字模式。該模式只對Windows或Dos有效,類Unix的檔案是用二進位模式進行操作的。 |
Table 檔案對象方法
方法 |
描述 |
f.close() |
關閉檔案,記住用open()開啟檔案後一定要記得關閉它,否則會佔用系統的可開啟檔案控制代碼數。 |
f.fileno() |
獲得檔案描述符,是一個數字 |
f.flush() |
重新整理輸出緩衝 |
f.isatty() |
如果檔案是一個互動終端,則返回True,否則返回False。 |
f.read([count]) |
讀出檔案,如果有count,則讀出count個位元組。 |
f.readline() |
讀出一行資訊。 |
f.readlines() |
讀出所有行,也就是讀出整個檔案的資訊。 |
f.seek(offset[,where]) |
把檔案指標移動到相對於where的offset位置。where為0表示檔案開始處,這是預設值 ;1表示當前位置;2表示檔案結尾。 |
f.tell() |
獲得檔案指標位置。 |
f.truncate([size]) |
截取檔案,使檔案的大小為size。 |
f.write(string) |
把string字串寫入檔案。 |
f.writelines(list) |
把list中的字串一行一行地寫入檔案,是連續寫入檔案,沒有換行。 |
讀檔案
read = open(result)
line=read.readline()
while line:
print line
line=read.readline()#如果沒有這行會造成死迴圈
read.close
寫檔案
read = file(result,‘a+‘)
read.write("\r\n")
read.write("thank you")
read.close
其它
#-*- encoding:UTF-8 -*- filehandler = open(‘c:\\111.txt‘,‘r‘) #以讀方式開啟檔案,rb為二進位方式(片或可執行檔等)
print ‘read() function:‘ #讀取整個檔案 print filehandler.read()
print ‘readline() function:‘ #返迴文件頭,讀取一行 filehandler.seek(0) print filehandler.readline()
print ‘readlines() function:‘ #返迴文件頭,返回所有行的列表 filehandler.seek(0) print filehandler.readlines()
print ‘list all lines‘ #返迴文件頭,顯示所有行 filehandler.seek(0) textlist = filehandler.readlines() for line in textlist: print line, print print
print ‘seek(15) function‘ #移位到第15個字元,從16個字元開始顯示餘下內容 filehandler.seek(15) print ‘tell() function‘ print filehandler.tell() #顯示當前位置 print filehandler.read()
filehandler.close() #關閉檔案控制代碼
python檔案操作