單元7 文件操作與異常處理(電子教案)_第1頁
單元7 文件操作與異常處理(電子教案)_第2頁
單元7 文件操作與異常處理(電子教案)_第3頁
單元7 文件操作與異常處理(電子教案)_第4頁
單元7 文件操作與異常處理(電子教案)_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

單元7文件操作與異常處理【任務(wù)7-1】打開并讀取文件的全部行【任務(wù)描述】(1)在PyCharm集成開發(fā)環(huán)境中創(chuàng)建項(xiàng)目Unit07。(2)在項(xiàng)目Unit07創(chuàng)建Python程序文件7-1.py。(3)以“只讀”方式打開當(dāng)前工作文件夾中的文本文件“如何注冊京東賬號.txt”,然后讀取并輸出該文件的全部行。【任務(wù)實(shí)施】1.創(chuàng)建PyCharm項(xiàng)目Unit07成功啟動(dòng)PyCharm后,在指定位置“D:\PycharmProject\”,創(chuàng)建PyCharm項(xiàng)目Unit07。2.創(chuàng)建Python程序文件7-1.py在PyCharm項(xiàng)目“Unit07”中,新建Python程序文件“7-1.py”,同時(shí)PyCharm主窗口顯示程序文件“7-1.py”的代碼編輯窗口,在該程序文件的代碼編輯窗口也自動(dòng)添加了模板內(nèi)容。3.編寫Python程序代碼在新建文件“7-1.py”的代碼編輯窗口已有模板注釋內(nèi)容下面輸入程序代碼。defreadFile():objFile=open("D:\\PycharmProject\\Unit07\\如何注冊京東賬號.txt","r")fortxtLineinobjFile.readlines():print(txtLine,end="")objFile.close()try:readFile()exceptExceptionaserror:print(error)單擊工具欄中【保存】按鈕,保存程序文件“7-1.py”。4.運(yùn)行Python程序在PyCharm主窗口選擇【Run】菜單,在彈出的下拉菜單中選擇【Run】菜單項(xiàng)。在彈出的【Run】對話框中選擇“7-1”選項(xiàng),程序“7-1.py”開始運(yùn)行。程序7-1.py的運(yùn)行結(jié)果如下所示。如何注冊京東賬號?若您還沒有京東賬號,請單擊注冊,詳細(xì)操作步驟如下:(1)打開京東首頁,在右上方單擊【免費(fèi)注冊】按鈕;(2)進(jìn)入到注冊頁面,請?zhí)顚懩泥]箱、手機(jī)等信息完成注冊;(3)注冊成功后,請完成賬戶安全驗(yàn)證,來提高您的賬戶安全等級?!救蝿?wù)7-2】實(shí)現(xiàn)文件內(nèi)容的寫入與讀取【任務(wù)描述】(1)在項(xiàng)目Unit07創(chuàng)建Python程序文件7-2.py。(2)使用兩種方法將圖書數(shù)據(jù)寫入當(dāng)前工作文件夾的“myBook.txt”文件中。(3)使用兩種方法從“myBook.txt”文件中讀取全部行,并輸出。【任務(wù)實(shí)施】1.創(chuàng)建Python程序文件7-2.py在PyCharm項(xiàng)目“Unit07”中,新建Python程序文件“7-2.py”,同時(shí)PyCharm主窗口顯示程序文件“7-2.py”的代碼編輯窗口,在該程序文件的代碼編輯窗口也自動(dòng)添加了模板內(nèi)容。2.編寫Python程序代碼在新建文件“7-2.py”的代碼編輯窗口已有模板注釋內(nèi)容下面輸入程序代碼。fieldName=["商品編碼","圖書名稱","價(jià)格"]book=["book1","book2","book3"]book1=["12528944","PPT設(shè)計(jì)從入門到精通",79.00]book2=["12563157","給Python點(diǎn)顏色青少年學(xué)編程",59.80]book3=["12451724","Python從入門到項(xiàng)目實(shí)踐(全彩版)",99.80]book4=["12550531","Python編程錦囊(全彩版)",79.80]defgetSize(text):iftype(text)!=str:text=str(text)lenText=len(text)#調(diào)用len函數(shù)計(jì)算字符串的字符數(shù)量lenTextUtf8=len(text.encode('UTF-8'))#計(jì)算字符串UTF-8編碼的長度iflenText!=lenTextUtf8:size=int(lenText-(lenTextUtf8-lenText)/2)#計(jì)算字符中半角字符的數(shù)量returnsizeelse:return0defwriteFile1():objFile=open(r"D:\PycharmProject\Unit07\myBook.txt","w")objFile.write("{0:{1}^6s}".format(fieldName[0],chr(12288)))objFile.write("{0:{1}^18s}".format(fieldName[1],chr(12288)))objFile.write("{0:{1}^10s}".format(fieldName[2],chr(12288)))objFile.write("\n")#使用eval方法將字符串轉(zhuǎn)換為變量名foritemBookinbook:objFile.write("{0:{1}^10}".format(eval(itemBook)[0],chr(12288)))objFile.write("{0:{1}<20s}".format(eval(itemBook)[1],chr(12288)))objFile.write("{0:<{1}s}".format(chr(32),str(getSize(eval(itemBook)[1]))))objFile.write("{0:{1}>6.2f}".format(eval(itemBook)[2],chr(12288)))objFile.write("\n")objFile.close()defwriteFile2():objFile=open(r"D:\PycharmProject\Unit07\myBook.txt","a")objFile.write("{0:{1}^10}".format(book4[0],chr(12288)))#使用eval方法將字符串轉(zhuǎn)換為變量名objFile.write("{0:{1}<20s}".format(book4[1],chr(12288)))objFile.write("{0:<{1}s}".format(chr(32),str(getSize(book4[1]))))objFile.write("{0:{1}>6.2f}".format(book4[2],chr(12288)))objFile.write("\n")defreadFile1():objFile=open(r"D:\PycharmProject\Unit07\myBook.txt","r")strText=""whileTrue:str=objFile.readline()ifstr!="":strText=strText+strelse:breakprint(strText)objFile.close()defreadFile2():withopen(r"D:\PycharmProject\Unit07\myBook.txt","r")asobjFile:fortxtLineinobjFile.readlines():print(txtLine,end="")objFile.close()try:writeFile1()writeFile2()readFile1()readFile2()exceptExceptionaserror:print(error)單擊工具欄中【保存】按鈕,保存程序文件“7-2.py”。3.運(yùn)行Python程序在PyCharm主窗口選擇【Run】菜單,在彈出的下拉菜單中選擇【Run】菜單項(xiàng)。在彈出的【Run】對話框中選擇“7-2”選項(xiàng),程序“7-2.py”開始運(yùn)行。程序7-2.py的運(yùn)行結(jié)果如下所示。圖7-1程序7-2.py的運(yùn)行結(jié)果【任務(wù)7-3】以二進(jìn)制形式打開文件并讀取其內(nèi)容【任務(wù)描述】(1)在項(xiàng)目Unit07創(chuàng)建Python程序文件7-3.py。(2)自定義函數(shù)readFile(),該函數(shù)以二進(jìn)制只讀模式“rb”打開文本文件“expectation.txt”,然后讀取該文件的內(nèi)容,并使用函數(shù)decode()將bytes對象轉(zhuǎn)換為文字字符串。(3)調(diào)用自定義函數(shù)readFile(),并以文字形式輸出文件“expectation.txt”的內(nèi)容?!救蝿?wù)實(shí)施】在PyCharm項(xiàng)目Unit07中創(chuàng)建Python程序文件7-3.py。在程序文件7-3.py中編寫程序代碼,實(shí)現(xiàn)所需功能。fileName=r"D:\PycharmProject\Unit07\expectation.txt"defreadFile(fileName):objFile=open(fileName,"rb")text=objFile.read()strText=text.decode(encoding="utf-8",errors="strict")objFile.close()returnstrTexttry:print(readFile(fileName))exceptExceptionaserror:print(error)程序7-3.py的運(yùn)行結(jié)果如下所示。Brightsunshine,fullofvitalityandallthingsrenewed【任務(wù)7-4】通過移動(dòng)文件指針的方法讀取指定字符【任務(wù)描述】(1)在項(xiàng)目Unit07創(chuàng)建Python程序文件7-4.py。(2)以二進(jìn)制形式打開文本文件“expectation.txt”。電子活頁7-4程序7-4.py代碼(3)結(jié)合移動(dòng)文件指針的方法seek()從文本文件“expectation.txt”中多次讀取指定數(shù)量的字符,并使用函數(shù)decode()電子活頁7-4程序7-4.py代碼【任務(wù)實(shí)施】在PyCharm項(xiàng)目Unit07中創(chuàng)建Python程序文件7-4.py。在程序文件7-4.py中編寫程序代碼,實(shí)現(xiàn)所需功能。defreadFile():withopen(r"D:\PycharmProject\Unit07\expectation.txt","rb")asobjFile:print("當(dāng)前文件指針的位置1:",objFile.tell())str=objFile.read(6)print("第1次讀取的6個(gè)字符:",str.decode(encoding="utf-8",errors="strict"))objFile.seek(7,0)print("當(dāng)前文件指針的位置2:",objFile.tell())str=objFile.read(8)print("第2次讀取的8個(gè)字符:",str.decode(encoding="utf-8",errors="strict"))print("指針移動(dòng)后文件指針的位置3:",objFile.tell())objFile.seek(2,1)str=objFile.read()print("第3次讀取的字符:",str.decode(encoding="utf-8",errors="strict"))print("指針移動(dòng)后文件指針的位置4:",objFile.tell())objFile.close()try:readFile()exceptExceptionaserror:print(error

溫馨提示

  • 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

提交評論