版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
專題十文件讀寫[考綱要求]1.熟練掌握open()函數(shù)的使用2.了解文件讀寫模式的區(qū)別3.掌握文件讀寫的使用4.掌握文件對(duì)象的方法5.會(huì)使用文件讀寫進(jìn)行簡(jiǎn)單的程序設(shè)計(jì)[課時(shí)安排]2課時(shí)[知識(shí)梳理]open()函數(shù)打開文件Python使用open()函數(shù)打開文件進(jìn)行文件讀寫的操作file=open(文件路徑,mode='r')參數(shù)說明:文件路徑:打開文件的地址,一定要有文件的后綴名,否則會(huì)報(bào)錯(cuò)mode:文件的打開模式,'mode='可以省略下面是文件的讀寫模式:注意:文件的默認(rèn)打開模式是r(只讀)下面是關(guān)于文件讀寫模式的區(qū)別【示例1】新建一個(gè)文件"test1.txt"。文件的內(nèi)容為:"HelloPython",使用模式"r"打開f=open("test1.txt",'r')
print(f.read())
f.close()【示例2】向文件"test2.txt"里面寫入內(nèi)容:"HelloWorld",使用模式"w"打開f=open("test2.txt",'w')
f.write("HelloWorld")
f.close()【示例3】向文件"test3.txt"里面寫入內(nèi)容:"HelloPythonandWorld",使用模式"a"打開f=open("test2.txt",'a')
f.write("HelloPythonandWorld")
f.close()with上下文管理器之前的方法打開文件,需要使用close()函數(shù)關(guān)閉文件,如果忘記關(guān)閉文件可能會(huì)導(dǎo)致文件損壞。Python使用with上下文管理器來打開文件,最后會(huì)自動(dòng)關(guān)閉文件。語(yǔ)法結(jié)構(gòu):withopen(文件路徑,文件打開模式)as文件對(duì)象:文件讀寫操作【示例】打開一個(gè)文件"test4.txt"并且寫入內(nèi)容"testcode",使用模式"w"打開。withopen("test4.txt","w")asf:
f.write("testcode")文件對(duì)象的方法準(zhǔn)備工作:創(chuàng)建一個(gè)test.txt文件,里面的內(nèi)容為"helloworld\nhellopython"當(dāng)文件以模式"r"打開文件1.文件對(duì)象.read([num])讀取文件的內(nèi)容,默認(rèn)讀取全部?jī)?nèi)容。也可以指定讀取的長(zhǎng)度num,來讀取num個(gè)字符長(zhǎng)度的內(nèi)容withopen("test.txt","r")asf:
print(f.read())#"helloworld\nhellopython" print(f.read(5))#"hello"2.文件對(duì)象.readline()讀取文件一行內(nèi)容withopen("test.txt","r")asf:
print(f.readline())#"helloworld"3.文件對(duì)象.readlines()讀取文件內(nèi)容,將文件的每行內(nèi)容返回為列表的形式withopen("test.txt","r")asf:
print(f.readlines())#['helloworld\n','hellopython\n']當(dāng)文件以模式"w"/"a"打開文件1.文件對(duì)象.write(cont)寫入內(nèi)容contwithopen("test.txt","w")asf:
print(f.write("haha"))2.文件對(duì)象.writelines(cont),將列表中的內(nèi)容寫入文件中l(wèi)st=["helloworld\n","hellopython\n"]
withopen("test.txt","w")asf:
f.writelines(lst)設(shè)置讀取文件內(nèi)容的位置文件對(duì)象.seek(index)其中的index是文件內(nèi)容的索引(0開始)withopen("test.txt","r")asfile:
file.seek(6)
print(file.read())運(yùn)行結(jié)果:worldhellopython查看文件指針位置文件對(duì)象.tell()withopen("test.txt","r")asfile:
file.seek(6)
print(file.tell())#6其他的文件對(duì)象方法查看打開的文件名字f.closed查看文件是否關(guān)閉f.mode查看文件的打開模式f.close()關(guān)閉文件【示例】f=open("test.txt",'r')
print()#test.txt
print(f.closed)#False
print(f.mode)#r
f.close()
print(f.closed)#True[限時(shí)練習(xí)]1.關(guān)于Python中open()函數(shù)的默認(rèn)文件打開模式,下面說法正確的是()。A.默認(rèn)模式為“w”僅寫入模式B.默認(rèn)模式為“r”僅讀取模式C.默認(rèn)模式為“a”追加模式D.默認(rèn)模式為“b”二進(jìn)制模式【答案】B【解析】根據(jù)文件中的描述,文件的默認(rèn)打開模式是“r”(只讀),因此選項(xiàng)B正確。其他選項(xiàng)中“w”是只寫模式,會(huì)覆蓋原文件內(nèi)容,“a”是追加模式,“b”是二進(jìn)制模式。2.在Python文件操作中,下面哪段代碼能正確實(shí)現(xiàn)文件的自動(dòng)關(guān)閉功能并讀取文件內(nèi)容()。A.f=open("test.txt","w")print(f.read())f.close()B.withopen("test.txt","r")asf:print(f.read())C.f=open("test.txt","r")print(f.read())D.f=open("test.txt","a")print(f.read())f.close()【答案】B【解析】選項(xiàng)B使用了with上下文管理器,它會(huì)在代碼塊執(zhí)行完畢后自動(dòng)關(guān)閉文件,無需手動(dòng)調(diào)用close()方法。3.下面哪項(xiàng)描述正確體現(xiàn)了Python文件讀寫模式“w+”的功能()。A.只能寫入,不能讀取B.只能讀取,不能寫入C.可讀可寫,若文件存在則覆蓋原文件內(nèi)容D.追加寫入并可讀取,不會(huì)覆蓋原文件內(nèi)容【答案】C【解析】“w+”模式表示可讀可寫,若文件存在則覆蓋原文件內(nèi)容,若不存在則創(chuàng)建文件。而“r+”表示讀寫模式,文件存在才能打開,不會(huì)覆蓋原文件內(nèi)容,“a+”表示追加寫入并可讀取,不會(huì)覆蓋原文件內(nèi)容。所以選項(xiàng)C正確。4.已知文件指針最初位于文件開頭,執(zhí)行以下代碼后,文件指針的位置在哪里()。withopen("test.txt","r")asf:f.seek(5)f.read(3)print(f.tell())假設(shè)文件內(nèi)容足夠長(zhǎng),能夠讀取到相應(yīng)位置。A.5B.8C.3D.0【答案】B【解析】f.seek(5)將文件指針移動(dòng)到索引5的位置,然后f.read(3)從該位置讀取3個(gè)字符,文件指針會(huì)移動(dòng)到索引5+3=8的位置,所以f.tell()返回8,選項(xiàng)B正確。5.已知文件test.txt內(nèi)容為“hello\nworld\npython”,執(zhí)行以下代碼后輸出結(jié)果是什么()。withopen("test.txt","r")asf:lines=f.readlines()print(lines[-1].strip())A.pythonB.worldC.helloD.報(bào)錯(cuò)【答案】A【解析】readlines()將文件內(nèi)容按行讀取為列表,列表最后一個(gè)元素是“python\n”,使用strip()移除換行符后輸出“python”,選項(xiàng)A正確。6.下面關(guān)于文件對(duì)象f的描述,錯(cuò)誤的是()。A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 殯儀服務(wù)員安全演練評(píng)優(yōu)考核試卷含答案
- 鋼琴裝配工安全文明測(cè)試考核試卷含答案
- 導(dǎo)游崗前安全實(shí)踐考核試卷含答案
- 農(nóng)業(yè)技術(shù)員操作評(píng)估水平考核試卷含答案
- 水泥生產(chǎn)工安全生產(chǎn)規(guī)范評(píng)優(yōu)考核試卷含答案
- 工業(yè)廢水處理工誠(chéng)信品質(zhì)模擬考核試卷含答案
- 2025年結(jié)核病防控工作自查報(bào)告
- 承包改廁合同范本
- 鋼材勞務(wù)合同范本
- 投資酒館合同范本
- 保衛(wèi)管理員三級(jí)測(cè)試題+答案
- 007能源內(nèi)審檢查表
- 2025至2030電熔氧化鎂行業(yè)市場(chǎng)深度研究及發(fā)展前景投資可行性分析報(bào)告
- 五四運(yùn)動(dòng)思想傳播的層級(jí)結(jié)構(gòu)與區(qū)域差異研究
- 浙江案底管理辦法
- 潰瘍性結(jié)腸炎教學(xué)課件
- 營(yíng)口英才計(jì)劃管理辦法
- 富斯遙控器FS-i6說明書
- 食堂油煙機(jī)清洗記錄表
- 兒童口腔健康科普宣傳
- 殺豬飯活動(dòng)方案(3篇)
評(píng)論
0/150
提交評(píng)論