單元9 使用Python處理文件_第1頁
單元9 使用Python處理文件_第2頁
單元9 使用Python處理文件_第3頁
單元9 使用Python處理文件_第4頁
單元9 使用Python處理文件_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

單元9使用Python處理文件文件通常用于存儲(chǔ)應(yīng)用軟件的參數(shù)或臨時(shí)性數(shù)據(jù)。處理文件借助Python提供的相關(guān)模塊9.1文件的常見操作打開文件讀寫文件復(fù)制文件刪除文件9.1.1文件的創(chuàng)建使用open()函數(shù)open(file,mode='r',buffering=-1)參數(shù)mode:文件的打開模式文件打開模式含義注意t文本文件模式,默認(rèn)值文件必須存在b二進(jìn)制模式r只讀模式。以只讀方式打開文件。文件的指針將會(huì)放在文件的開頭,默認(rèn)值rb以二進(jìn)制格式打開文件,并且采用只讀模式。文件指針將會(huì)放在文件的開頭。r+讀寫模式。打開文件后,可以讀取文件內(nèi)容,也可以寫入新的內(nèi)容覆蓋原有的內(nèi)容(從文件開頭進(jìn)行覆蓋)rb+以二進(jìn)制格式打開文件,并且采用讀寫模式x寫模式,新建一個(gè)文件文件不能存在w只寫入模式。打開一個(gè)文件只用于寫入。如果該文件已存在,則打開文件,并從開頭開始編輯,即原有內(nèi)容會(huì)被刪除。如果該文件不存在,創(chuàng)建新文件文件存在,寫入數(shù)據(jù)時(shí),將覆蓋原來的數(shù)據(jù)。文件不存在,創(chuàng)建新的文件wb以二進(jìn)制格式打開文件,并且采用只寫入模式。如果該文件已存在,則打開文件,并從開頭開始編輯,即原有內(nèi)容會(huì)被刪除。如果該文件不存在,創(chuàng)建新文件w+打開一個(gè)文件用于讀寫。打開文件后,先清空原有內(nèi)容,使其變?yōu)榭瘴募瑢υ撐募凶x寫權(quán)限。wb+以二進(jìn)制格式打開文件,并且采用讀寫模式。如果該文件已存在,則打開文件,并從開頭開始編輯,即原有內(nèi)容會(huì)被刪除。如果該文件不存在,創(chuàng)建新文件a追加寫模式。打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說,新的內(nèi)容將會(huì)被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入文件存在,寫入數(shù)據(jù)時(shí),新的數(shù)據(jù)放在原來數(shù)據(jù)的后面。文件不存在,創(chuàng)建新的文件ab以二進(jìn)制格式打開文件,并且采用追加寫模式。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說,新的內(nèi)容將會(huì)被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入a+打開一個(gè)文件用于讀寫。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。如果該文件不存在,創(chuàng)建新文件ab+以二進(jìn)制格式打開文件,并且采用追加寫模式。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說,新的內(nèi)容將會(huì)被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入file對象常用屬性和方法屬性和方法描

述closed判斷文件是否關(guān)閉。如果文件被關(guān)閉,返回Trueencoding顯示文件的編碼類型mode顯示文件的打開模式name顯示文件的名稱newlines文件使用的換行模式file(name[,mode[,buffering]])以mode指定的方式打開文件。如果文件不存在,則先創(chuàng)建文件,再打開該文件。buffering表示緩存模式。0表示不緩存;1表示行緩沖;如果大于1則表示緩沖區(qū)的大小flush()把緩存區(qū)的內(nèi)容寫入磁盤close()關(guān)閉文件read([size])從文件中讀取size個(gè)字節(jié)的內(nèi)容,作為字符串返回readline([size])從文件中讀取1行,作為字符串返回。如果指定size,表示每行每次讀取的字節(jié)數(shù),依然要讀完整行的內(nèi)容readlines([size])把文件中的每行存儲(chǔ)在列表中返回。如果指定size,表示每次讀取的字節(jié)數(shù)seek(offset[,whence])把文件的指針移動(dòng)到一個(gè)新的位置。offset表示相對于whence的位置。whence用于設(shè)置相對位置的起點(diǎn),0表示從文件開頭開始計(jì)算;1表示從當(dāng)前位置開始計(jì)算;2表示從文件末尾開始計(jì)算。如果whence省略,offset表示相對文件開頭的位置tell()返回文件指針當(dāng)前的位置next()返回下一行的內(nèi)容,并將文件的指針移到下一行truncate([size])刪除size個(gè)字節(jié)的內(nèi)容write(str)把字符串str的內(nèi)容寫入文件writelines(sequence_of_strings)把字符串序列寫入文件9.1.2文件的讀取按行讀取方法readline()每次讀取文件中的一行多行讀取方法readlines()一次性讀取文件中多行數(shù)據(jù)一次性讀取方法read()一次性讀出所有內(nèi)容9.1.3文件的寫入列表內(nèi)容寫入方法writelines()可以把列表中存儲(chǔ)的內(nèi)容寫入文件字符串寫入方法write()可以把字符串寫入文件9.1.4文件的刪除使用os模塊提供了對系統(tǒng)環(huán)境、文件、目錄等操作系統(tǒng)級(jí)的接口函數(shù)函數(shù)描述access(path,mode)按照mode指定的權(quán)限訪問文件chmod(path,mode)改變文件的訪問權(quán)限。mode用UNIX系統(tǒng)中的權(quán)限代號(hào)表示open(filename,flag[,mode=0777])按照mode指定的權(quán)限打開文件。默認(rèn)情況下,給所有用戶讀、寫、執(zhí)行的權(quán)限r(nóng)emove(path)刪除path指定的文件rename(old,new)重命名文件或目錄。old表示原文件或目錄,new表示新文件或目錄stat(path)返回path指定文件的所有屬性fstat(path)返回打開的文件的所有屬性lseek(fd,pos,how)設(shè)置文件的當(dāng)前位置,返回當(dāng)前位置的字節(jié)數(shù)startfile(filepath[,operation])啟動(dòng)關(guān)聯(lián)程序打開文件。例如,打開的是一個(gè)html文件,將啟動(dòng)IE瀏覽器tmpfile()創(chuàng)建一個(gè)臨時(shí)文件,文件創(chuàng)建在操作系統(tǒng)的臨時(shí)目錄中使用os.path模塊函數(shù)描述abspath(path)返回path所在的絕對路徑dirname(p)返回目錄的路徑exists(path)判斷文件是否存在getatime(filename)返回文件的最后訪問時(shí)間getctime(filename)返回文件的創(chuàng)建時(shí)間getmtime(filename)返回文件最后的修改時(shí)間getsize(filename)返回文件的大小isabs(s)測試路徑是否是絕對路徑isdir(path)判斷path指定的是否是目錄isfile(path)判斷path指定的是否是文件split(p)對路徑進(jìn)行分隔,并以列表的方式返回splitext(p)從路徑中分割文件的擴(kuò)展名splitdrive(p)從路徑中分割驅(qū)動(dòng)器的名稱walk(top,func,arg)遍歷目錄數(shù),與os.walk()的功能相同9.1.5文件的復(fù)制使用read()將文件內(nèi)容復(fù)制出來、使用write()方法將其寫入到其他文件中。使用shutil模塊提供的copy()函數(shù)shutil.copy(src,dst)9.1.6文件的重命名使用os模塊提供的rename()函數(shù)os.rename(src,dst)9.1.7文件內(nèi)容的搜索和替換文件內(nèi)容的搜索和替換可以結(jié)合前面學(xué)習(xí)的字符串查找和替換來實(shí)現(xiàn)。9.1.8文件的移動(dòng)使用shutil模塊的move()函數(shù)shutil.move(src,dst)9.2目錄的常見操作Python的os模塊和os.path模塊同樣提供了一些針對目錄操作的函數(shù)。9.2.1創(chuàng)建和刪除目錄使用os模塊提供的函數(shù)函數(shù)描述mkdir(path[,mode=0777])創(chuàng)建path指定的1個(gè)目錄makedirs(name,mode=511)創(chuàng)建多級(jí)目錄,name表示為“path1/path2/…”rmdir(path)刪除path指定的目錄removedirs(path)刪除path指定的多級(jí)目錄listdir(path)返回path指定目錄下所有的文件名getcwd()返回當(dāng)前的工作目錄chdir(path)改變當(dāng)前目錄為path指定的目錄walk(top,topdown=True,onerror=None)遍歷目錄樹9.2.2目錄

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論