首先open是python內建的乙個開啟檔案,建立乙個file物件的方法。與之相似的方法有個file。其功能上沒有太大的區別。
fileobject
=open
(file_name
[,access_mode
][,buffering
])
其中file_name是檔名,access_mode是開啟檔案的模式(如唯讀,讀寫),buffering表示訪問檔案時的寄存行。
access_mode的選項有
r :唯讀模式開啟,檔案指標放到檔案的開頭。(預設模式)
r+ :開啟乙個檔案用於讀寫,檔案指標放到檔案的開頭。
w :開啟乙個檔案用於寫入,若檔案存在則覆蓋原始檔,若不存在則建立。
w+:開啟乙個檔案用於讀寫。。。
a :開啟乙個檔案用於追加寫入,若檔案存在,檔案指標在檔案的結尾。
a+ :開啟乙個檔案用於讀寫追加,若檔案存在,檔案指標在檔案的結尾。
b :和上述mode都可以組合使用,代表的是以二進位制格式。
file物件的屬性。
file.closed 判斷檔案是否關閉
file.mode 判斷檔案的訪問模式
file.name 判斷檔案的名稱
舉例說明
>>> f = open('txt','a+')
>>> f.read()
'1\n2\n3\n4\n5\n'
>>> f.closed
false
>>> f.mode
'a+'
>>> f.name
'txt'
>>>
1.close() 方法:
file的close方法是用來關閉檔案的,當關閉後,不能再操作檔案,並且將修改資料同步至檔案內。
f.close()
2.write()方法:
file的write方法是將任何的字串寫入乙個開啟的檔案內。
f.write('string content .....')
3.read()方法:
file的read方法式將檔案中的內容讀出來。但是要注意,第一次呼叫後,指標會指向檔案末尾,導致第二次呼叫時檔案讀不出內容。
f.read() 要想列印出檔案內容,需要print f.read()
4.seek()方法,檔案定位:
file的seek方法可以定位檔案指標的位置。seek(offset[,from]),offset表示要移動的位元組數,from指點開始移動位元組的參考位置。from為0表示檔案開頭,from為1表示當前位置。from為2表示檔案末尾。
>>> f = open('txt','a+')
>>> f.read()
'1\n2\n3\n4\n5\nak47m4a1'
>>> f.read()
''>>> f.seek(0,0)
>>> f.read()
'1\n2\n3\n4\n5\nak47m4a1'
5.flush()方法
file的flush方法可以直接將內部的所有緩衝區中的資料立刻寫入檔案,而不是被動的等待
f.flush()
6.readline()方法
file的readline讀取整行(只有一行),包括『\n』
7.readlines()方法
讀取所有行,並且返回列表。
8.replace()方法
將舊的內容(old_text)使用新的內容(new_text)去替換。
用法file.replace(old_text,new_text)
檔案的重新命名
重新命名需要python的os模組,比如刪除,重新命名,但是使用前必須匯入os模組。
語法:os.rename(current_file_name, new_file_name)
檔案的刪除
語法:os.remove("test2.txt")
目錄的建立目錄
語法:os.mkdir("newdir")
當前所處位置
語法:os.chdir("newdir")
得到所處目錄位置
語法:os.getcwd()
python的檔案處理
f open f.txt w r唯讀,w可寫,a追加 for i in range 0,10 f.write str i n f.close open是python的內建函式,有時候檔案由於編碼的不同,會造成亂碼,為了解決這個問題 可以使用codecs模組來解決這個問題 import codecs ...
python的檔案處理
1 什麼是檔案?檔案是作業系統為使用者或應用程式提供的乙個讀寫硬碟的虛擬單位 檔案的操作核心就 讀 寫 即我們只需要對於進行讀寫操作,就是對作業系統發起請求,然後由作業系統將使用者或者應用程式 對檔案的讀寫操作轉換成具體的硬碟指令 比如控制碟片轉動,控制機械手臂移動來讀寫資料 2 為什麼要有檔案?因...
python的檔案處理
01 檔案的開啟和關閉 開啟檔案 open 檔名,訪問模式 f open test.txt w 訪問模式 r w a rb wb ab r w a rb wb ab 關閉檔案 f.close 02 檔案的讀寫 寫資料f open test.txt w f.write hello world f.cl...