項(xiàng)目7 文件操作_第1頁(yè)
項(xiàng)目7 文件操作_第2頁(yè)
項(xiàng)目7 文件操作_第3頁(yè)
項(xiàng)目7 文件操作_第4頁(yè)
項(xiàng)目7 文件操作_第5頁(yè)
已閱讀5頁(yè),還剩46頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

項(xiàng)目7

文件操作7.1常用文件類(lèi)型1文本文件(.txt)2csv文件(.csv)3Json文件(.json)4Excel文件(.xlsx,.xls)5圖像文件(.jpg,.png,.gif)6SQLite文件(.db)7.1

常用的文件類(lèi)型

1文本文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。用于存儲(chǔ)和處理文本數(shù)據(jù),可以使用Python的內(nèi)置函數(shù)和模塊進(jìn)行讀取、寫(xiě)入、搜索和處理文本文件中的數(shù)據(jù)。文本文件通常以擴(kuò)展名.txt命名,但實(shí)際上,任何不包含二進(jìn)制數(shù)據(jù)的文件都可以被視為文本文件。文本文件可以包含普通文本、配置信息、日志記錄、源代碼等各種類(lèi)型的文本數(shù)據(jù)。7.1

常用的文件類(lèi)型

2.CSV文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。逗號(hào)分隔值文件,用于存儲(chǔ)和處理表格數(shù)據(jù)。CSV文件以純文本形式存儲(chǔ),使用逗號(hào)(或其他分隔符)來(lái)分隔不同的字段,每行代表一個(gè)數(shù)據(jù)記錄。CSV文件適用于各種數(shù)據(jù)集,如數(shù)據(jù)集合并、導(dǎo)入和導(dǎo)出數(shù)據(jù)、數(shù)據(jù)分析等任務(wù)。Python提供了csv模塊,使得處理CSV文件變得非常方便。7.1

常用的文件類(lèi)型

3.JSON文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。

JavaScript對(duì)象表示法文件,用于存儲(chǔ)和交換結(jié)構(gòu)化數(shù)據(jù)。JSON文件以純文本形式存儲(chǔ),采用類(lèi)似于字典和列表的鍵值對(duì)結(jié)構(gòu)來(lái)表示數(shù)據(jù)。JSON文件適用于各種數(shù)據(jù)類(lèi)型,包括字符串、數(shù)字、布爾值、列表、字典等。Python提供了內(nèi)置的json模塊,使得處理JSON文件變得非常方便。7.1

常用的文件類(lèi)型

4.Excel文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。

MicrosoftExcel電子表格文件,用于存儲(chǔ)和處理表格數(shù)據(jù),Excel文件通常包含多個(gè)工作表(表格),每個(gè)工作表由行和列組成,用于存儲(chǔ)數(shù)據(jù)和執(zhí)行各種計(jì)算和分析操作,可以使用Python的pandas庫(kù)或openpyxl庫(kù)讀取和寫(xiě)入Excel文件。7.1

常用的文件類(lèi)型

5.圖像文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。包含圖像數(shù)據(jù)的文件,用于存儲(chǔ)和處理圖像數(shù)據(jù)。Python提供了多個(gè)庫(kù)和工具,用于讀取、處理和保存圖像文件。以下是幾個(gè)常用的庫(kù):PIL/Pillow:這是PythonImagingLibrary(PIL)的一個(gè)分支,也是最常用的圖像處理庫(kù)之一。它支持各種圖像文件格式,如JPEG、PNG、GIF、BMP等,并提供了豐富的函數(shù)和方法來(lái)操作圖像數(shù)據(jù)。OpenCV:這是一個(gè)強(qiáng)大的計(jì)算機(jī)視覺(jué)庫(kù),廣泛應(yīng)用于圖像處理和計(jì)算機(jī)視覺(jué)任務(wù)。它支持各種圖像文件格式,并提供了用于讀取、處理和保存圖像的函數(shù)和方法。7.1

常用的文件類(lèi)型

6.SQLite數(shù)據(jù)庫(kù)文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。輕量級(jí)的嵌入式關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),它以文件形式存儲(chǔ)數(shù)據(jù),無(wú)需獨(dú)立的服務(wù)器進(jìn)程。Python內(nèi)置了對(duì)SQLite數(shù)據(jù)庫(kù)的支持,使得在Python程序中使用SQLite數(shù)據(jù)庫(kù)變得非常方便。可以使用Python的sqlite3模塊進(jìn)行SQLite數(shù)據(jù)庫(kù)的創(chuàng)建、讀取、寫(xiě)入和查詢(xún)操作。7.2文件的打開(kāi)關(guān)閉與讀寫(xiě)7.2.1打開(kāi)文件7.2.2文件讀寫(xiě)7.2.3文件關(guān)閉7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.1打開(kāi)文件數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。在Python中,可以使用內(nèi)置的open()函數(shù)來(lái)打開(kāi)文件。open()函數(shù)接受文件路徑和打開(kāi)模式作為參數(shù),并返回一個(gè)文件對(duì)象,該對(duì)象可用于讀取或?qū)懭胛募4蜷_(kāi)文件的基本語(yǔ)法如下所示:file_path:要打開(kāi)的文件的路徑,可以是相對(duì)路徑或絕對(duì)路徑:#相對(duì)路徑file=open('test.txt')#絕對(duì)路徑file=open('./files/test.txt')file=open(file_path,mode)7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.1打開(kāi)文件:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。若文件成功打開(kāi),則函數(shù)返回一個(gè)表示已打開(kāi)文件的文件對(duì)象。若函數(shù)無(wú)法成功打開(kāi)文件(例如文件不存在或沒(méi)有足夠的權(quán)限),它將引發(fā)一個(gè)相關(guān)的異常,例如FileNotFoundError。FileNotFoundError:[Errno2]Nosuchfileordirectory:'./file/test.txt'mode:打開(kāi)文件的模式,表示對(duì)文件進(jìn)行讀取、寫(xiě)入、追加等操作。7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

常用的文件模式:文件模式描述‘r’只讀模式,用于讀取文件內(nèi)容(默認(rèn)模式)'w'寫(xiě)入模式,用于清空文件內(nèi)容并寫(xiě)入新內(nèi)容。如果文件不存在,則創(chuàng)建新文件'a'追加模式,用于在文件末尾追加內(nèi)容。如果文件不存在,則創(chuàng)建新文件'x'獨(dú)占模式,用于創(chuàng)建新文件,如果文件已存在,則拋出異常。'b'二進(jìn)制模式,用于處理二進(jìn)制文件。't'文本模式,用于處理文本文件(默認(rèn)模式)'+'以讀寫(xiě)模式打開(kāi)文件,可以同時(shí)執(zhí)行讀取和寫(xiě)入操作??梢耘c上述模式字符結(jié)合使用,例如'r+'表示以讀寫(xiě)模式打開(kāi)文件在使用open()函數(shù)時(shí),可以根據(jù)需要選擇適當(dāng)?shù)哪J健_@些模式字符可以組合使用,以滿足具體的需求。7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.2

文件讀寫(xiě)數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。Open函數(shù)成功打開(kāi)文件后會(huì)返回一個(gè)TextIOWrapper對(duì)象,TextIOWrapper對(duì)象提供了一系列方法和屬性,用于對(duì)文本文件進(jìn)行讀寫(xiě)操作。下面是一些常用的方法和屬性:read(size=-1):從文件中讀取指定的字節(jié)數(shù)或全部?jī)?nèi)容。如果未指定size參數(shù)或指定為-1,則會(huì)讀取整個(gè)文件。返回一個(gè)包含讀取內(nèi)容的字符串(文本模式)或字節(jié)對(duì)象(二進(jìn)制模式)。代碼示例如下:#打開(kāi)文本文件file=open('test.txt','r')#創(chuàng)建TextIOWrapper對(duì)象text_file=file.__enter__()#讀取文件內(nèi)容content=text_file.read()print(content)#關(guān)閉文件file.__exit__(None,None,None)7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.2

文件讀寫(xiě)數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。write(string):將指定的字符串寫(xiě)入文件。返回寫(xiě)入的字符數(shù)。代碼示例如下:#打開(kāi)文本文件file=open('test.txt','w')#創(chuàng)建TextIOWrapper對(duì)象text_file=file.__enter__()#寫(xiě)入內(nèi)容text_file.write('Hello,World!')#關(guān)閉文件file.__exit__(None,None,None)7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.2

文件讀寫(xiě)數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。readline():逐行讀取文件內(nèi)容。每次調(diào)用readline()會(huì)返回文件中的一行作為字符串。連續(xù)調(diào)用readline()將讀取文件中的下一行。代碼示例如下:#打開(kāi)文本文件file=open('test.txt','r')#創(chuàng)建TextIOWrapper對(duì)象text_file=file.__enter__()#逐行讀取文件內(nèi)容line1=text_file.readline()print(line1)line2=text_file.readline()print(line2)#關(guān)閉文件file.__exit__(None,None,None)7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.2

文件讀寫(xiě)數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。writelines(lines):將包含多行字符串的列表寫(xiě)入文件。每個(gè)字符串都會(huì)作為一行寫(xiě)入文件。代碼示例如下:#打開(kāi)文本文件file=open('test.txt','w')#創(chuàng)建TextIOWrapper對(duì)象text_file=file.__enter__()#寫(xiě)入多行內(nèi)容lines=['Line1\n','Line2\n','Line3\n']text_file.writelines(lines)#關(guān)閉文件file.__exit__(None,None,None)7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.3

文件關(guān)閉數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。在Python中,關(guān)閉文件是一個(gè)良好的編程實(shí)踐,它確保在文件操作完成后釋放系統(tǒng)資源。文件的關(guān)閉可以通過(guò)兩種方式來(lái)實(shí)現(xiàn):使用file.close()方法:在完成對(duì)文件的讀寫(xiě)操作后,可以調(diào)用文件對(duì)象的close()方法來(lái)關(guān)閉文件。代碼示例如下:#打開(kāi)文件file=open('test.txt','r')#進(jìn)行文件讀取操作content=file.read()print(content)#關(guān)閉文件file.close()7.2

文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2.3

文件關(guān)閉數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。使用with語(yǔ)句:with語(yǔ)句是一種上下文管理器,它可以自動(dòng)管理資源的分配和釋放。當(dāng)使用with語(yǔ)句打開(kāi)文件時(shí),文件會(huì)在with代碼塊執(zhí)行完畢后自動(dòng)關(guān)閉,即使發(fā)生異常也不例外。代碼示例如下:#使用with語(yǔ)句打開(kāi)文件withopen('test.txt','r')asfile:content=file.read()print(content)#文件已在with代碼塊結(jié)束后自動(dòng)關(guān)閉7.2文件的打開(kāi)關(guān)閉與讀寫(xiě)

【技能實(shí)訓(xùn)】編寫(xiě)一個(gè)Python程序,要求用戶(hù)輸入一個(gè)文件名和一些文本內(nèi)容,將輸入的文本內(nèi)容寫(xiě)入文件中,并在寫(xiě)入完成后將文件內(nèi)容讀取出來(lái)并打印。

分析:首先,提示用戶(hù)輸入文件名和文本內(nèi)容。然后,打開(kāi)文件并將文本內(nèi)容寫(xiě)入文件。接著,關(guān)閉文件。再次打開(kāi)文件以讀取文件內(nèi)容,然后關(guān)閉文件。最后,打印文件內(nèi)容。這個(gè)思路實(shí)現(xiàn)了用戶(hù)輸入文件名和文本內(nèi)容,將文本內(nèi)容寫(xiě)入文件,讀取文件內(nèi)容并打印的功能。#用戶(hù)輸入文件名和文本內(nèi)容file_name=input("請(qǐng)輸入文件名:")text=input("請(qǐng)輸入文本內(nèi)容:")#打開(kāi)文件并寫(xiě)入內(nèi)容file=open(file_name,'w')file.write(text)file.close()#打開(kāi)文件并讀取內(nèi)容file=open(file_name,'r')content=file.read()file.close()#打印文件內(nèi)容print(f"文件內(nèi)容為:{content}")7.2文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.2文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.3使用標(biāo)準(zhǔn)模塊處理文件7.3.1os模塊7.3.2sys模塊7.3.3io模塊7.3.4os.path模塊7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。os模塊是Python標(biāo)準(zhǔn)庫(kù)中與操作系統(tǒng)交互的模塊,提供了一系列函數(shù)和常量,用于執(zhí)行與文件和目錄操作、進(jìn)程管理、環(huán)境變量等相關(guān)的操作。1.獲取與改變工作目錄:os模塊提供的getcwd函數(shù)用于獲取和改變工作目錄,工作目錄是指程序當(dāng)前所處的目錄,一些文件和目錄操作相對(duì)于工作目錄進(jìn)行。os模塊提供的chdir函數(shù)可以將當(dāng)前工作目錄更改為指定路徑。7.3使用標(biāo)準(zhǔn)模塊處理文件

【技能實(shí)訓(xùn)】請(qǐng)使用getcwd函數(shù)獲取當(dāng)前的工作目錄,并輸出該目錄,并利用chdir函數(shù)將當(dāng)前工作目錄設(shè)置為上一級(jí)目錄。分析:首先導(dǎo)入os模塊,該模塊提供了訪問(wèn)操作系統(tǒng)功能的接口。然后,使用getcwd()函數(shù)獲取當(dāng)前的工作目錄,并將結(jié)果存儲(chǔ)在變量current_directory中。接著,使用print()函數(shù)將當(dāng)前工作目錄輸出到控制臺(tái)。最后,使用chdir()函數(shù)將當(dāng)前工作目錄設(shè)置為上一級(jí)目錄。importos#獲取當(dāng)前工作目錄并輸出該目錄print('當(dāng)前工作目錄:',os.getcwd())print('工作目錄中包含的文件或文件夾名字的列表')#輸出path指定的文件夾包含的文件或文件夾名字的列表print(os.listdir(os.getcwd()))#改變當(dāng)前工作目錄os.chdir('../')print('改變后的工作目錄',os.getcwd())print('新的工作目錄中包含的文件或文件夾名字的列表')print(os.listdir(os.getcwd()))7.2文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.3使用標(biāo)準(zhǔn)模塊處理文件

7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。2.文件和目錄操作:os模塊提供了一組用于文件和目錄操作的函數(shù),可以用于創(chuàng)建、刪除、重命名、遍歷和獲取文件和目錄的信息。以下是os模塊中一些常用的文件和目錄操作函數(shù)的詳細(xì)說(shuō)明。mkdir(path)函數(shù):用于創(chuàng)建一個(gè)新目錄。Path參數(shù)為要?jiǎng)?chuàng)建的目錄的路徑,它可以是相對(duì)路徑或絕對(duì)路徑。需要注意的是,如果指定的目錄已經(jīng)存在,將引發(fā)FileExistsError異常;創(chuàng)建目錄的權(quán)限遵循操作系統(tǒng)的默認(rèn)設(shè)置。代碼示例如下:importosos.mkdir('/path/to/new/directory')```7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。makedirs(path)函數(shù):用于遞歸地創(chuàng)建多個(gè)嵌套目錄。Path參數(shù)為要?jiǎng)?chuàng)建的目錄的路徑。它可以是相對(duì)路徑或絕對(duì)路徑。如果指定的目錄已經(jīng)存在,將引發(fā)FileExistsError異常。代碼示例如下:importosos.makedirs('/path/to/new/directory/nested')```7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。rmdir(path)函數(shù):用于刪除指定的目錄。path:要?jiǎng)h除的目錄的路徑。它可以是相對(duì)路徑或絕對(duì)路徑。僅當(dāng)目錄為空時(shí),才能成功刪除。如果目錄中包含文件或其他子目錄,將引發(fā)OSError異常;刪除目錄的權(quán)限遵循操作系統(tǒng)的默認(rèn)設(shè)置。代碼示例如下:importosos.rmdir('/path/to/directory')```7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。removedirs(path)函數(shù):用于遞歸地刪除指定目錄及其所有空子目錄。Path參數(shù)為要?jiǎng)h除的目錄的路徑,它可以是相對(duì)路徑或絕對(duì)路徑。該函數(shù)將遞歸地刪除指定目錄及其所有空子目錄,直到遇到非空目錄或無(wú)法刪除的目錄為止;刪除目錄的權(quán)限遵循操作系統(tǒng)的默認(rèn)設(shè)置。代碼示例如下:importosos.removedirs('/path/to/directory/nested')````7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。remove(path)函數(shù):用于刪除指定的文件。Path參數(shù)為要?jiǎng)h除的文件的路徑。它可以是相對(duì)路徑或絕對(duì)路徑。如果指定的文件不存在,將引發(fā)FileNotFoundError異常;刪除文件的權(quán)限遵循操作系統(tǒng)的默認(rèn)設(shè)置。代碼示例如下:importosos.remove('file.txt')```7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.1os模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。rename(src,dst)函數(shù):用于對(duì)文件或目錄進(jìn)行重命名。Src參數(shù)為要重命名的文件或目錄的原始路徑,dst參數(shù)為重命名后的文件或目錄的目標(biāo)路徑。如果源路徑不存在,將引發(fā)FileNotFoundError異常;如果目標(biāo)路徑已經(jīng)存在,將引發(fā)FileExistsError異常;重命名文件或目錄的權(quán)限遵循操作系統(tǒng)的默認(rèn)設(shè)置。代碼示例如下:importosos.rename('old.txt','new.txt')```7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.2

sys模塊sys模塊是Python的內(nèi)置模塊之一,提供了與Python解釋器及其環(huán)境相關(guān)的功能。下表描述了sys模塊中重要函數(shù)和變量的功能。函數(shù)/變量函數(shù)返回?cái)?shù)據(jù)類(lèi)型/變量數(shù)據(jù)類(lèi)型描述argv列表命令行參數(shù),sys.argv[0]是腳本的名稱(chēng),后續(xù)元素是傳遞給腳本的參數(shù)exit([arg])Nonearg(取值范圍0~255):表示程序的退出狀態(tài)碼。默認(rèn)值為0,表示正常退出。通常,非零的狀態(tài)碼用于指示程序發(fā)生了錯(cuò)誤或異常情況modules字典包含當(dāng)前已經(jīng)導(dǎo)入的模塊path列表獲取或設(shè)置搜索模塊的路徑列表,如果import的模塊不在path列表字典的路徑,可以使用path.append方法添加模塊所在路徑platform字符串獲取當(dāng)前操作系統(tǒng)的平臺(tái)標(biāo)識(shí)符,如MacOSX的值是darwin,windows的值是win32stdinTextIOWrapper類(lèi)標(biāo)準(zhǔn)輸入流stdoutTextIOWrapper類(lèi)標(biāo)準(zhǔn)輸出流stderrTextIOWrapper類(lèi)標(biāo)準(zhǔn)錯(cuò)誤流7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.2

sys模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。下面將對(duì)sys模塊的幾個(gè)函數(shù)和變量的用法進(jìn)行演示。sys.argv:獲取命令行參數(shù)。代碼示例如下:importsysdefmain():args=sys.argv[1:]#獲取除去腳本名稱(chēng)的命令行參數(shù)

print("命令行參數(shù):",args)if__name__=='__main__':main()7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.2

sys模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。sys.exit([arg]):退出程序。代碼示例如下:

importsysdefmain():answer=input("是否繼續(xù)操作?(y/n):")ifanswer.lower()=='n':sys.exit("操作被中止!")

else:print("繼續(xù)執(zhí)行...")if__name__=='__main__':main()7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.3

io模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。

io模塊是Python的內(nèi)置模塊之一,提供了對(duì)文件和流進(jìn)行輸入和輸出操作的功能。它定義了多個(gè)類(lèi)和函數(shù),用于處理不同類(lèi)型的輸入輸出,包括文本文件、二進(jìn)制文件、內(nèi)存緩沖區(qū)等。下面對(duì)io模塊中一些常用的類(lèi)和函數(shù)進(jìn)行簡(jiǎn)要介紹。1.open()函數(shù):open()函數(shù)用于打開(kāi)文件,并返回一個(gè)文件對(duì)象。它接受文件路徑和打開(kāi)模式作為參數(shù),可以指定讀取、寫(xiě)入、追加等操作。例如:#打開(kāi)文件進(jìn)行讀取file=open('file.txt','r')7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.3

io模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。2.TextIOWrapper類(lèi):TextIOWrapper類(lèi)是io模塊中的一個(gè)文本文件包裝器,用于處理文本文件的讀寫(xiě)操作。它是io.TextIOBase的子類(lèi),提供了更高級(jí)的文本處理功能。例如,可以使用read()方法讀取文件的內(nèi)容,使用write()方法寫(xiě)入文本等。示例代碼如下所示:file=open('file.txt','r')text_file=io.TextIOWrapper(file)content=text_file.read()

7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.3

io模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。3.BufferedReader和BufferedWriter類(lèi):BufferedReader和BufferedWriter類(lèi):BufferedReader類(lèi)和BufferedWriter類(lèi)是io模塊中的二進(jìn)制文件包裝器,用于處理二進(jìn)制文件的讀寫(xiě)操作。它們是io.BufferedIOBase的子類(lèi),提供了緩沖區(qū)功能,可以提高讀寫(xiě)效率。例如,可以使用read()方法從二進(jìn)制文件中讀取數(shù)據(jù),使用write()方法寫(xiě)入二進(jìn)制數(shù)據(jù)等。示例代碼如下所示:importio#打開(kāi)文件withopen('test.txt','rb')asfile:#使用io.BufferedReader包裝文件對(duì)象

binary_file=io.BufferedReader(file)#讀取文件內(nèi)容

data=binary_file.read()#打印讀取的數(shù)據(jù)print(data)

7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.3

io模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。4.BytesIO類(lèi):BytesIO類(lèi)是io模塊中的一個(gè)內(nèi)存緩沖區(qū),用于處理二進(jìn)制數(shù)據(jù)。它提供了類(lèi)似文件對(duì)象的接口,可以讀取和寫(xiě)入二進(jìn)制數(shù)據(jù)。例如,可以使用read()方法從BytesIO對(duì)象中讀取數(shù)據(jù),使用write()方法將二進(jìn)制數(shù)據(jù)寫(xiě)入BytesIO對(duì)象。示例代碼如下所示:importiodata=b'Hello,World!'byte_stream=io.BytesIO(data)content=byte_stream.read()

7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.3

io模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。5.StringIO類(lèi):StringIO類(lèi)是io模塊中的一個(gè)內(nèi)存緩沖區(qū),用于處理字符串?dāng)?shù)據(jù)。它提供了類(lèi)似文件對(duì)象的接口,可以讀取和寫(xiě)入字符串?dāng)?shù)據(jù)。例如,可以使用read()方法從StringIO對(duì)象中讀取數(shù)據(jù),使用write()方法將字符串?dāng)?shù)據(jù)寫(xiě)入StringIO對(duì)象。示例代碼如下所示:importiocontent='Hello,World!'str_stream=io.StringIO(content)data=str_stream.read()

7.3使用標(biāo)準(zhǔn)模塊處理文件

【技能實(shí)訓(xùn)】假設(shè)有一個(gè)名為data.txt的文本文件,其中存儲(chǔ)了一些整數(shù)如下所示:510-38

請(qǐng)編寫(xiě)一個(gè)程序,讀取文件的內(nèi)容并計(jì)算這些整數(shù)的總和。分析:首先,創(chuàng)建符合題目要求的"data.txt"文件并將其打開(kāi),使用文件操作功能逐行讀取文件內(nèi)容并將其轉(zhuǎn)換為整數(shù)類(lèi)型,然后將每個(gè)整數(shù)累加到一個(gè)變量中,最終計(jì)算它們的總和,在完成讀取和計(jì)算后關(guān)閉文件以釋放資源。具體實(shí)現(xiàn)代碼如下所示:importio#打開(kāi)文本文件withopen('data.txt','r')asfile:#讀取文件內(nèi)容

lines=file.readlines()#初始化總和

total=0#解析每行的整數(shù)并計(jì)算總和

forlineinlines:#去除換行符并轉(zhuǎn)換為整數(shù)

number=int(line.strip())#累加到總和

total+=number#輸出總和print(f"總和:{total}")7.2文件的打開(kāi)關(guān)閉與讀寫(xiě)

7.3使用標(biāo)準(zhǔn)模塊處理文件

總和:20該程序的運(yùn)行結(jié)果如下:7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.4

os.path模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。

os.path模塊是Python的內(nèi)置模塊之一,用于處理文件路徑和名稱(chēng)的相關(guān)操作。它提供了一組函數(shù)用于操作和處理文件路徑、檢查文件是否存在、獲取文件信息等。os.path模塊的功能強(qiáng)大且跨平臺(tái),適用于不同操作系統(tǒng)上的文件路徑操作。下面對(duì)os.path模塊中幾個(gè)常用的函數(shù)進(jìn)行簡(jiǎn)要介紹。1.os.path.join()函數(shù):join()函數(shù)用于將多個(gè)路徑組合成一個(gè)有效的路徑。它接受多個(gè)參數(shù),并自動(dòng)根據(jù)操作系統(tǒng)的規(guī)范連接路徑中的各個(gè)部分。示例代碼如下所示:importos.pathpath=os.path.join('dir','subdir','file.txt')print(path)7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.4

os.path模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。2.os.path.abspath()函數(shù):abspath()函數(shù)用于返回指定路徑的絕對(duì)路徑。它接受一個(gè)路徑參數(shù),并返回該路徑的絕對(duì)路徑表示。示例代碼如下所示:importos.pathpath=os.path.abspath('file.txt')print(path)7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.4

os.path模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。3.os.path.basename()函數(shù):basename()函數(shù)用于獲取路徑中的文件名部分。它接受一個(gè)路徑參數(shù),并返回該路徑的文件名部分。示例代碼如下所示:importos.pathfilename=os.path.basename('/path/to/file.txt')print(filename)7.3

使用標(biāo)準(zhǔn)模塊處理文件

7.3.4

os.path模塊數(shù)字類(lèi)型是Python中的一種數(shù)據(jù)類(lèi)型,指的是Python程序中所用到的數(shù)字。根據(jù)數(shù)字的不同特點(diǎn),將數(shù)字類(lèi)型細(xì)分為整型(int)、浮點(diǎn)型(float)、復(fù)數(shù)類(lèi)型(complex)和布爾類(lèi)型(bool)。整型:Python程序中的整數(shù)。如10、21、33。浮點(diǎn)型:Python程序中的小數(shù)或指數(shù)。如3.14、4.0、5.3E-3。復(fù)數(shù)類(lèi)型:Python程序中用a+bj或a+bJ表示的,a為復(fù)數(shù)的實(shí)部,b為復(fù)數(shù)的虛部。如1+2j、3-4j。布爾類(lèi)型:用于描述條件判斷的結(jié)果,只有True和False兩個(gè)值。True為真,F(xiàn)alse為假。4.os.path.dirname()函數(shù):dirname()函數(shù)用于獲取路徑中的目錄部分。它接受一個(gè)路徑參數(shù),并返回該路徑的目錄部分。示例代碼如下所示:importos.pathdirectory=os.pa

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論