




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
單元9使用Python處理文件文件通常用于存儲應用軟件的參數或臨時性數據。處理文件借助Python提供的相關模塊9.1文件的常見操作打開文件讀寫文件復制文件刪除文件9.1.1文件的創建使用open()函數open(file,mode='r',buffering=-1)參數mode:文件的打開模式文件打開模式含義注意t文本文件模式,默認值文件必須存在b二進制模式r只讀模式。以只讀方式打開文件。文件的指針將會放在文件的開頭,默認值rb以二進制格式打開文件,并且采用只讀模式。文件指針將會放在文件的開頭。r+讀寫模式。打開文件后,可以讀取文件內容,也可以寫入新的內容覆蓋原有的內容(從文件開頭進行覆蓋)rb+以二進制格式打開文件,并且采用讀寫模式x寫模式,新建一個文件文件不能存在w只寫入模式。打開一個文件只用于寫入。如果該文件已存在,則打開文件,并從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件文件存在,寫入數據時,將覆蓋原來的數據。文件不存在,創建新的文件wb以二進制格式打開文件,并且采用只寫入模式。如果該文件已存在,則打開文件,并從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件w+打開一個文件用于讀寫。打開文件后,先清空原有內容,使其變為空文件,對該文件有讀寫權限。wb+以二進制格式打開文件,并且采用讀寫模式。如果該文件已存在,則打開文件,并從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件a追加寫模式。打開一個文件用于追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之后。如果該文件不存在,創建新文件進行寫入文件存在,寫入數據時,新的數據放在原來數據的后面。文件不存在,創建新的文件ab以二進制格式打開文件,并且采用追加寫模式。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之后。如果該文件不存在,創建新文件進行寫入a+打開一個文件用于讀寫。如果該文件已存在,文件指針將會放在文件的結尾。如果該文件不存在,創建新文件ab+以二進制格式打開文件,并且采用追加寫模式。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之后。如果該文件不存在,創建新文件進行寫入file對象常用屬性和方法屬性和方法描
述closed判斷文件是否關閉。如果文件被關閉,返回Trueencoding顯示文件的編碼類型mode顯示文件的打開模式name顯示文件的名稱newlines文件使用的換行模式file(name[,mode[,buffering]])以mode指定的方式打開文件。如果文件不存在,則先創建文件,再打開該文件。buffering表示緩存模式。0表示不緩存;1表示行緩沖;如果大于1則表示緩沖區的大小flush()把緩存區的內容寫入磁盤close()關閉文件read([size])從文件中讀取size個字節的內容,作為字符串返回readline([size])從文件中讀取1行,作為字符串返回。如果指定size,表示每行每次讀取的字節數,依然要讀完整行的內容readlines([size])把文件中的每行存儲在列表中返回。如果指定size,表示每次讀取的字節數seek(offset[,whence])把文件的指針移動到一個新的位置。offset表示相對于whence的位置。whence用于設置相對位置的起點,0表示從文件開頭開始計算;1表示從當前位置開始計算;2表示從文件末尾開始計算。如果whence省略,offset表示相對文件開頭的位置tell()返回文件指針當前的位置next()返回下一行的內容,并將文件的指針移到下一行truncate([size])刪除size個字節的內容write(str)把字符串str的內容寫入文件writelines(sequence_of_strings)把字符串序列寫入文件9.1.2文件的讀取按行讀取方法readline()每次讀取文件中的一行多行讀取方法readlines()一次性讀取文件中多行數據一次性讀取方法read()一次性讀出所有內容9.1.3文件的寫入列表內容寫入方法writelines()可以把列表中存儲的內容寫入文件字符串寫入方法write()可以把字符串寫入文件9.1.4文件的刪除使用os模塊提供了對系統環境、文件、目錄等操作系統級的接口函數函數描述access(path,mode)按照mode指定的權限訪問文件chmod(path,mode)改變文件的訪問權限。mode用UNIX系統中的權限代號表示open(filename,flag[,mode=0777])按照mode指定的權限打開文件。默認情況下,給所有用戶讀、寫、執行的權限remove(path)刪除path指定的文件rename(old,new)重命名文件或目錄。old表示原文件或目錄,new表示新文件或目錄stat(path)返回path指定文件的所有屬性fstat(path)返回打開的文件的所有屬性lseek(fd,pos,how)設置文件的當前位置,返回當前位置的字節數startfile(filepath[,operation])啟動關聯程序打開文件。例如,打開的是一個html文件,將啟動IE瀏覽器tmpfile()創建一個臨時文件,文件創建在操作系統的臨時目錄中使用os.path模塊函數描述abspath(path)返回path所在的絕對路徑dirname(p)返回目錄的路徑exists(path)判斷文件是否存在getatime(filename)返回文件的最后訪問時間getctime(filename)返回文件的創建時間getmtime(filename)返回文件最后的修改時間getsize(filename)返回文件的大小isabs(s)測試路徑是否是絕對路徑isdir(path)判斷path指定的是否是目錄isfile(path)判斷path指定的是否是文件split(p)對路徑進行分隔,并以列表的方式返回splitext(p)從路徑中分割文件的擴展名splitdrive(p)從路徑中分割驅動器的名稱walk(top,func,arg)遍歷目錄數,與os.walk()的功能相同9.1.5文件的復制使用read()將文件內容復制出來、使用write()方法將其寫入到其他文件中。使用shutil模塊提供的copy()函數shutil.copy(src,dst)9.1.6文件的重命名使用os模塊提供的rename()函數os.rename(src,dst)9.1.7文件內容的搜索和替換文件內容的搜索和替換可以結合前面學習的字符串查找和替換來實現。9.1.8文件的移動使用shutil模塊的move()函數shutil.move(src,dst)9.2目錄的常見操作Python的os模塊和os.path模塊同樣提供了一些針對目錄操作的函數。9.2.1創建和刪除目錄使用os模塊提供的函數函數描述mkdir(path[,mode=0777])創建path指定的1個目錄makedirs(name,mode=511)創建多級目錄,name表示為“path1/path2/…”rmdir(path)刪除path指定的目錄removedirs(path)刪除path指定的多級目錄listdir(path)返回path指定目錄下所有的文件名getcwd()返回當前的工作目錄chdir(path)改變當前目錄為path指定的目錄walk(top,topdown=True,onerror=None)遍歷目錄樹9.2.2目錄
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論