Python基礎教程 課件 項目九 Python文件操作_第1頁
Python基礎教程 課件 項目九 Python文件操作_第2頁
Python基礎教程 課件 項目九 Python文件操作_第3頁
Python基礎教程 課件 項目九 Python文件操作_第4頁
Python基礎教程 課件 項目九 Python文件操作_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

項目九Python文件操作任務9.2任務9.3CONTENTS目錄讀寫文件文件位置任務9.4任務9.1文件的打開和關閉文件和文件夾的相關操作任務9.1文件的打開和關閉文本文件存儲的是常規(guī)字符串,由若干文本行組成,通常每行以換行符‘\n’結尾。文本文件在磁盤上是以二進制形式存儲的,在讀取和查看文本文件時字處理軟件能自動識別,并使用正確的編碼方式解碼還原為字符串信息。9.1.1文件的概念二進制文件將信息以字節(jié)串(bytes)形式進行存儲,無法用記事本或其他普通字處理軟件直接進行編輯,也無法直接閱讀和理解,需要使用與之相關的軟件將其解碼后才能正確地讀取、顯示、修改或執(zhí)行。1.文本文件2.二進制文件在Python語言中,無論文本文件還是二進制文件,操作步驟基本一致,如下:(1)打開或新建文件,并創(chuàng)建文件對象。(2)對文件內容進行讀取、寫入、刪除、修改等操作。(3)關閉文件并保存文件內容。9.1.2文件的打開Python語言中內建了文件對象,通過open()函數可按照指定的打開方式打開文件,并創(chuàng)建文件對象。open()函數的語法格式如下:文件對象名=open(文件名[,打開方式])在Python語言中,雖然文件會在程序退出后自動關閉,但是考慮到數據的安全性,每次使用完文件后,都需要使用close()函數關閉文件。close()函數的語法格式如下:9.1.3文件的關閉例如,以只寫方式打開一個名為“test.txt”的文件,然后關閉文件。程序代碼如下:文件對象名.close()file=open(′test.txt′,′w′)

#以只寫方式打開一個名為“test.txt”的文件file.close() #關閉文件在Python程序中,讀寫文件應優(yōu)先考慮使用上下文管理語句,其語法格式如下:9.1.4上下文管理語句其中,context_expression為表達式;target(s)為對象名。當對文件內容進行讀寫時,可使用with語句,其語法格式如下:withcontext_expression[astarget(s)]:with-bodywithopen(文件名[,打開方式])as文件對象名:#通過文件對象名讀寫文件內容語句示例代碼如下:withopen(′test.txt′,′r′)assrc:src.read()任務9.2讀寫文件1.read()函數

read()函數用于從文件中讀取指定的字節(jié)數,如果未給定參數或參數為負,則讀取整個文件內容,其語法格式如下:文件對象名.read([size])9.2.1讀文件

【例9-2】使用read()函數讀取“test.txt”文件。程序代碼如右:print("使用read()函數讀取“test.txt”文件\n")#以只讀方式打開“test.txt”文件withopen(′test.txt′,′r′)asfile:line=file.read(10) #讀取文件中的前10字節(jié)print("讀取文件的前10字節(jié)并輸出")print(line) #輸出文件中的前10字節(jié)print("-------------------------")#讀取文件中剩余的所有內容content=file.read()print("讀取文件中剩余的所有內容并輸出")print(content)

#輸出文件中剩余的所有內容2.readline()函數

readline()函數的語法格式如下:文件對象名.readline([size])9.2.1讀文件【例9-3】使用readline()函數讀取“test.txt”文件。程序代碼如下:print("使用readline()函數讀取“test.txt”文件\n")#以只讀方式打開“test.txt”文件withopen(′test.txt′,′r′)asfile:line_1=file.readline()

#讀取第一行

print(line_1)

#輸出print("-------------------------")line_2=file.readline(10) #讀取第二行的前10個字符print(line_2)

#輸出print("-------------------------")

3.readlines()函數

readlines()函數用于讀取所有行(直到結束符EOF,EndOfFile)并返回列表,列表中每個元素為文件中的一行數據,其語法格式如下:文件對象名.readlines()9.2.1讀文件【例9-4】使用readlines()函數讀取“test.txt”文件。程序代碼如下:print("使用readlines()函數讀取“test.txt”文件\n")#以只讀方式打開“test.txt”文件withopen(′test.txt′,′r′)asfile:content=file.readlines()print(content)

#讀取所有行并返回列表#輸出列表print("----------------------------")fortempincontent: #遍歷列表print(temp)1.write()函數

write()函數用于向文件中寫入指定字符串,其語法格式如下:文件對象名.write(str)9.2.2寫文件【例9-5】向“test_0.txt”文件中寫入如下數據。ChineseMathEnglishPhysicsChemistryArtistGeography程序代碼如下:1.write()函數9.2.2寫文件#print("使用write()函數向“test_0.txt”文件中寫入數據\n")#file=open(′test_0.txt′,′w′)#打開名為“test_0.txt”的文件withopen(′test_0.txt′,′w′)asfile:#向文件中輸入字符串file.write(′Chinese\n′)file.write(′Math\n′)file.write(′English\n′)file.write(′Physics\n′)file.write(′Chemistry\n′)file.write(′Artist\n′)file.write(′Geography\n′)file.close()

#關閉文件2.writelines()函數

writelines()函數用于向文件中寫入一個序列字符串。這個序列字符串是由迭代對象產生的(如一個字符串列表),其語法格式如下:文件對象名.writelines(sequence)9.2.2寫文件【例9-6】使用writelines()函數向已有的“test_0.txt”文件中追加如下數據。1.HelloWorld!2.Hello!WelcometoPython!如果要向文件中追加數據,則需要以追加方式“a”打開文件。在使用writelines()函數寫入數據時,同樣不會自動在列表末尾添加換行符,需要手動添加。程序代碼如下:9.2.2寫文件#定義列表并賦值list_0=[′1.HelloWorld!′,′2.Hello!WelcometoPython!′]#以追加方式打開原有的“test_0.txt”文件withopen(′test_0.txt′,′a′)asfile:file.writelines(list_0[0])#向文件中追加字符串列表file.writelines(′\n′)file.writelines(list_0[1])file.writelines(′\n′)file.close() #關閉文件任務9.3文件位置tell()函數返回文件的當前位置,即文件位置指針的當前位置,其語法格式如下:文件對象名.tell()9.3.1獲取當前讀寫位置【例9-8】使用tell()函數獲取文件當前的讀寫位置。程序代碼如下:print("使用tell()函數獲取文件當前的讀寫位置\n")print("-------------------------\n")#以只讀方式打開“test_0.txt”文件withopen(′test_0.txt′,′r′)asfile:line=file.read(7)#讀取文件中的前7字節(jié)print(line) #輸出文件中的前7字節(jié)

9.3.1獲取當前讀寫位置

p=file.tell()

#獲取文件位置指針的當前位置

print("當前位置:",p) #輸出當前位置line=file.read(5) #繼續(xù)向后讀取5字節(jié)print(line) #輸出讀取到的數據p=file.tell() #獲取文件位置指針的當前位置print("當前位置:",p) #輸出當前位置file.close()seek()函數用于移動文件位置指針到指定位置,其語法格式如下:文件對象名.seek(offset[,whence])9.3.2定位到某個位置【例9-9】創(chuàng)建“seek.txt”文件,并將“Hello!WelcometoPython!”存入文件,再讀取“Python”輸出到終端。程序代碼如下:file_name=input(′輸入新建的文件名:′)

#輸入文件名withopen(file_name,′w+′)asfile:

#新建文件并以讀寫方式打開file.write("Hello!WelcometoPython!") #將字符串寫入文件file.seek(17)

#將文件位置指針移到第17個字符處string_0=file.read(6)

#讀取6個字符給變量string_0print(string_0) #輸出file.close() #關閉文件

任務9.4文件和文件夾相關操作9.4.1文件相關操作rename()函數存放在Python語言中的os模塊內,用于對文件進行重命名操作,其語法格式如下:os.rename(src,dst)1.rename()函數其中,src表示要修改的文件名;dst表示修改后的新文件名。例如,將“file_12.txt”文件重命名為“file_20.txt”。示例代碼如下:>>>importos>>>os.rename("file_12.txt","file_20.txt")9.4.1文件相關操作remove()函數在Python中的os模塊中,用于對文件進行刪除操作,其語法格式如下:os.remove(path)2.remove()函數其中,path表示指定路徑下的文件。例如,刪除當前路徑下“file_20.txt”文件的示例代碼如下:>>>importos>>>os.remove("file_20.txt")9.4.2文件夾相關操作os模塊中的mkdir()函數用于創(chuàng)建文件夾。示例代碼如下:>>>importos>>>os.mkdir("file0")1.創(chuàng)建文件夾os模塊中的rmdir()函數用于刪除文件夾。示例代碼如下:>>>importos>>>os.rmdir("file0")2.刪除文件夾9.4.2文件夾相關操作os模塊中的getcwd()函數用于獲取文件夾的當前目錄。示例代碼如下:>>>importos>>>os.getcwd()′C:\\Python\\Python3.11′3.獲取當前目錄os模塊中的chdir()函數用于改變文件夾的默認目錄。例如,將文件夾的當前目錄改變?yōu)樯弦患壞夸浀拇a如下:>>>importos>>>os.chdir(".

溫馨提示

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

評論

0/150

提交評論