Python程序設計教程 課件 第11章-文件及IO操作_第1頁
Python程序設計教程 課件 第11章-文件及IO操作_第2頁
Python程序設計教程 課件 第11章-文件及IO操作_第3頁
Python程序設計教程 課件 第11章-文件及IO操作_第4頁
Python程序設計教程 課件 第11章-文件及IO操作_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第11章-文件及IO操作馬馳率風,羊致清和本章目標掌握文件讀寫的基本操作掌握with語句的使用熟悉數(shù)據(jù)的組織維度掌握不同維度數(shù)據(jù)的存儲掌握目錄與文件的相關(guān)操作馬馳率風,羊致清和文件的概述文件存儲在計算機的存儲設備中的一組數(shù)據(jù)序列就是文件不同類型的文件通過后綴名進行區(qū)分文本文件由于編碼格式的不同,所占磁盤空間的字節(jié)數(shù)不同二進制文件沒有統(tǒng)一的編碼,文件直接由0或1組成,需要使用指定的軟件才能打開馬馳率風,羊致清和文件的基本操作Python操作文件的步驟1打開文件2操作文件3關(guān)閉文件變量名=open(filename,mode,encoding)變量名.read()變量名.write(s)變量名.close()馬馳率風,羊致清和文件的基本操作文件的狀態(tài)和操作過程馬馳率風,羊致清和文件的基本操作文件的打開模式模式說明r以只讀模式打開,文件指針在文件的開頭,如果文件不存在,程序拋異常rb以只讀模式打開二進制文件,如圖片文件w覆蓋寫模式,文件不存在創(chuàng)建,文件存在則內(nèi)容覆蓋wb覆蓋寫模式寫入二進制數(shù)據(jù),文件不存在則創(chuàng)建,文件存在則覆蓋a追加寫模式,文件不存在創(chuàng)建,文件存在,則在文件最后追加內(nèi)容+與w/r/a等一同使用,在原功能的基礎上增加同時讀寫功能馬馳率風,羊致清和文件的基本操作讀寫方法描述說明file.read(size)從文件中讀取size個字符或字節(jié),如果沒有給定參數(shù),則讀取文件中的全部內(nèi)容file.readline(size)讀取文件中的一行數(shù)據(jù),如果給定參數(shù),則為讀取這一行中的size個字符或字節(jié)file.readlines()從文件中讀取所有內(nèi)容,結(jié)果為列表類型file.write(s)將字符串s寫入文件file.writelines(lst)將內(nèi)容全部為字符串的列表lst寫入文件file.seek(offset)改變當前文件操作指針的位置,英文占一個字節(jié),中文gbk編碼占兩個字節(jié),utf-8編碼占三個字節(jié)馬馳率風,羊致清和文件的基本操作with語句:又稱上下文管理器,在處理文件時,無論是否產(chǎn)生異常,都能保證with語句執(zhí)行完畢后關(guān)閉已經(jīng)打開的文件,這個過程是自動的,無需手動操作。語法結(jié)構(gòu):

withopen(....)asfile:pass馬馳率風,羊致清和數(shù)據(jù)的組織維度及存儲數(shù)據(jù)的組織維度:也稱為數(shù)據(jù)的組織方式或存儲方式,在Python中常用的數(shù)據(jù)組織方式可分為一維數(shù)據(jù)、二維數(shù)據(jù)和高維數(shù)據(jù)。一維數(shù)據(jù)通常采用線性方式組織數(shù)據(jù),一般使用Python中的列表、元組或者集合進行存儲數(shù)據(jù)。二維數(shù)據(jù)二維數(shù)據(jù)也稱表格數(shù)據(jù),由行和列組成,類似于Excel表格,在Python中使用二維列表進行存儲。高維數(shù)據(jù)高級數(shù)據(jù)則是使用Key-Value方式進行組織數(shù)據(jù),在Python中使用字典進行存儲數(shù)據(jù)。在Python中內(nèi)置的json模塊專門用于處理JSON(JavaScriptObjectNotation)格式的數(shù)據(jù)。馬馳率風,羊致清和文件的基本操作函數(shù)名稱描述說明json.dumps(obj)將Python數(shù)據(jù)類型轉(zhuǎn)成JSON格式過程,編碼過程json.loads(s)將JSON格式字符串轉(zhuǎn)成Python數(shù)據(jù)類型,解碼過程json.dump(obj,file)與dumps()功能相同,將轉(zhuǎn)換結(jié)果存儲到文件file中json.load(file)與loads()功能相同,從文件file中讀入數(shù)據(jù)json模塊的常用函數(shù)馬馳率風,羊致清和目錄與文件的相關(guān)操作osPython內(nèi)置的與操作系統(tǒng)文件相關(guān)的模塊,該模塊中語句的執(zhí)行結(jié)果通常與操作系統(tǒng)有關(guān),即有些函數(shù)的運行效果在Windows操作系統(tǒng)和MacOS系統(tǒng)中不一樣。函數(shù)名稱描述說明getcwd()獲取當前的工作路徑listdir(path)獲取path路徑下的文件和目錄信息,如果沒有指定path,則獲取當前路徑下的文件和目錄信息mkdir(path)在指定路徑下創(chuàng)建目錄(文件夾)makedirs(path)創(chuàng)建多級目錄馬馳率風,羊致清和目錄與文件的相關(guān)操作函數(shù)名稱描述說明rmdir(path)刪除path下的空目錄removedirs(path)刪除多級目錄chdir(path)把path設置為當前目錄walk(path)遍歷目錄樹,結(jié)果為元組,包含所有路徑名、所有目錄列表和文件列表remove(path)刪除path指定的文件rename(old,new)將old重命名為newstat(path)獲取path指定的文件信息startfile(path)啟動path指定的文件馬馳率風,羊致清和目錄與文件的相關(guān)操作函數(shù)名稱描述說明abspath(path)獲取目錄或文件的絕對路徑exists(path)判斷目錄或文件在磁盤上是否存在,結(jié)果為bool類型,如果目錄或文件在磁盤上存在,結(jié)果為True,否則為Falsejoin(path,name)將目錄與目錄名或文件名進行拼接,相當于字符串的“+”操作splitext()分別獲取文件名和后綴名os.path模塊:是os模塊的子模塊,也提供了一些目錄或文件的操作函數(shù)。馬馳率風,羊致清和目錄與文件的相關(guān)操作函數(shù)名稱描述說明basename(path)從path中提取文件名dirname(path)從path中提取路徑(不包含文件名)isdir(path)判斷path是否是有效路徑isfile(path)判斷file是否是有效文件馬馳率風,羊致清和本章總結(jié)文件是存儲在輔助存儲設備的一組數(shù)據(jù)序列,不同類型的文件通過后綴名進行區(qū)分文件的分類文本文件二進制文件文件的操作順序打開文件open(filename,mode,encoding)操作文件文件對象.read()文件對象.readline()文件對象.readlines()文件對象.write()文件對象.writelines()關(guān)閉文件文件對象.close()馬馳率風,羊致清和本章總結(jié)with語句withopen(filename,mode,encoding)asfile:with語句優(yōu)點:處理文件時,無論是否產(chǎn)生異常,都能保證with語句執(zhí)行完畢后關(guān)閉已經(jīng)打開的文件數(shù)據(jù)的組織維度一維數(shù)據(jù):采用線性方式組織數(shù)據(jù),可以使用列表、元組、集合進行存儲二維數(shù)據(jù):由行和列組成,在Python中可使用二維列表進行存儲高維數(shù)據(jù):使用Key-Value對方式組織數(shù)據(jù),在Python中可使用字典進行存儲馬馳率風,羊致清和本章總結(jié)目錄與文件相關(guān)操作os模塊:Python內(nèi)置的與操作系統(tǒng)和文件系統(tǒng)相關(guān)的模塊,該模塊中語句的執(zhí)行結(jié)果通常與操作系統(tǒng)有關(guān)os.path模塊:os.path是os模塊的子模塊馬馳率風,羊致清和章節(jié)習題1)關(guān)于文件,下列說法錯誤的是:(

A.對已經(jīng)關(guān)閉的文件進行讀寫操作會默認再次打開文件

B.對文件操作完成后即使不關(guān)閉程序也會不報錯

C.對于非空文件,使用read()讀取全部內(nèi)容返回結(jié)果是字符串

D.file=open(filename,’rb’)表示以只讀二進制方式打開文件A馬馳率風,羊致清和章節(jié)習題2)閱讀下面代碼,程序的運行結(jié)果是

::(

A.北京

上海

天津

B.”北京”“上?!薄疤旖颉盋.“北京上海天津”D.北京上海天津D馬馳率風,羊致清和章節(jié)習題3)閱讀下面代碼,程序的運行結(jié)果是

::(

A.逐行輸出文件內(nèi)容

B.逐行輸出文件內(nèi)容,但每行以**開頭C.報錯D.文件被清空,所以沒有輸出C馬馳率風,羊致清和章節(jié)習題4)閱讀下面代碼,程序的運行結(jié)果是

::(

)a.txt文件中的內(nèi)容為welcometoBeiJing

A.welcometoBeiJing

B.<_io.TextIOWrappername='a.txt'mode='r'encoding='cp936'>C.fileD.a(chǎn).txtB馬馳率風,羊致清和章節(jié)習題5)在讀寫文件之前,需要創(chuàng)建文件對象,使用的函數(shù)是:(

A.create()

B.open()C.file()D.create_file()B馬馳率風,羊致清和章節(jié)習題6)在讀寫文件之前,需要打開文件對象,使用到的函數(shù)是:(

A.read()

B.fileopen()C.open()D.cfile()C馬馳率風,羊致清和章節(jié)習題7)在Python語言中,讀寫文件操作時定位到某個位置所用到的函數(shù)是:(

A.write()

B.seek()C.writelines()D.writetext()B馬馳率風,羊致清和章節(jié)習題8)以下對Python文件處理的描述中,錯誤的是:(

A.當文件以文本方式打開時,讀寫按照字節(jié)流方式

B.Python能夠以文本和二進制兩種方式處理文件C.Python通過內(nèi)置的函數(shù)open()打開一個文件D.Python文件操作完成后可以使用close()方法關(guān)閉,釋放文件的使用權(quán)A馬馳率風,羊致清和章節(jié)習題9)閱讀以下代碼,程序運行的結(jié)果是:(

A.程序報錯

B.“[Python程序設計教程,HTML前端技術(shù)之禪]”C.Python程序設計教程,HTML前端技術(shù)之禪D.Python程序設計教程

HTML前端技術(shù)之禪A馬馳率風,羊致清和章節(jié)習題10)以下關(guān)于文件讀寫的描述中,錯誤的是:(

A.使用with語句可以在文件操作完之后自動關(guān)閉文件

B.以覆蓋寫模式打開的文件無法進行讀取操作C.文件對象的seek(3)表示移動三個字符串的位置D.文件對象的readline()方法用來讀取一行字符串C馬馳率風,羊致清和章節(jié)習題需求:在指定路徑下批量創(chuàng)建3000份文本文件,文件名格式為序號_物資類別_用戶識別碼組成

1)序號從0001到3000

2)物資類別包括:水果、煙酒、糧油、肉蛋、蔬菜

3)用戶識別碼為9位的隨機十六進制數(shù)碼運行效果實戰(zhàn)一:批量創(chuàng)建文件馬馳率風,羊致清和章節(jié)習題運行效果實戰(zhàn)一:批量創(chuàng)建文件馬馳率風,羊致清和章節(jié)習題需求:在指定路徑newdir下批量創(chuàng)建指定個數(shù)的目錄(文件夾),如果newdir目錄不存在,則創(chuàng)建運行

溫馨提示

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

評論

0/150

提交評論