版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
匯報人:XX2024-01-10Python文件和數(shù)據(jù)格式化核心概念詳解目錄Python文件操作基礎(chǔ)數(shù)據(jù)格式化之字符串處理數(shù)據(jù)格式化之列表、元組與字典處理目錄數(shù)據(jù)格式化之JSON處理數(shù)據(jù)格式化之XML處理數(shù)據(jù)格式化之CSV處理01Python文件操作基礎(chǔ)關(guān)閉文件使用`close()`方法關(guān)閉文件,釋放資源。上下文管理器使用`with`語句可以自動管理文件的打開和關(guān)閉,無需手動調(diào)用`close()`方法。打開文件使用`open()`函數(shù)打開文件,需要指定文件路徑和打開模式。文件打開與關(guān)閉二進制模式以二進制方式打開文件,用于處理二進制數(shù)據(jù)。讀取模式以只讀方式打開文件,使用`read()`方法讀取文件內(nèi)容。寫入模式以寫入方式打開文件,使用`write()`方法向文件中寫入內(nèi)容。如果文件不存在,則創(chuàng)建新文件;如果文件已存在,則覆蓋原有內(nèi)容。追加模式以追加方式打開文件,使用`write()`方法向文件中追加內(nèi)容。如果文件不存在,則創(chuàng)建新文件;如果文件已存在,則在文件末尾追加內(nèi)容。文件讀寫模式指向當(dāng)前讀寫位置的標(biāo)記,可以通過移動文件指針來定位到文件中的任意位置。文件指針使用`seek()`方法可以移動文件指針到指定位置;使用`tell()`方法可以獲取當(dāng)前文件指針的位置。定位方法文件指針與定位ABCD文件不存在異常當(dāng)嘗試打開不存在的文件時,會拋出`FileNotFoundError`異常。文件關(guān)閉異常當(dāng)嘗試關(guān)閉未打開的文件或已關(guān)閉的文件時,會拋出`ValueError`異常。處理方法可以使用`try...except...finally`語句來捕獲并處理這些異常,確保程序的穩(wěn)定性和可靠性。文件讀寫異常當(dāng)在讀寫文件過程中發(fā)生錯誤時,會拋出`IOError`異常。文件異常處理02數(shù)據(jù)格式化之字符串處理使用7位二進制數(shù)表示字符,共128個,包括英文字母、數(shù)字、標(biāo)點符號等。ASCII編碼在Python中,可以使用`encode()`方法將字符串編碼為字節(jié)串,使用`decode()`方法將字節(jié)串解碼為字符串。編碼轉(zhuǎn)換統(tǒng)一碼,采用16位二進制數(shù)表示字符,可表示全球各種語言文字。Unicode編碼可變長編碼,用1到4個字節(jié)表示一個字符,兼容ASCII編碼,廣泛應(yīng)用于網(wǎng)頁和網(wǎng)絡(luò)數(shù)據(jù)傳輸。UTF-8編碼字符串編碼與解碼舊式字符串格式化01使用`%`操作符進行格式化,如`"Hello,%s!"%name`。str.format()方法02使用大括號`{}`作為占位符,通過`format()`方法進行格式化,如`"Hello,{}!".format(name)`。f-string格式化03在Python3.6及以上版本中引入,使用`f`或`F`前綴和花括號`{}`進行格式化,如`f"Hello,{name}!"`。字符串格式化方法使用`+`操作符連接兩個字符串。字符串拼接使用`split()`方法根據(jù)指定分隔符將字符串分割成列表。字符串分割使用切片操作截取字符串的一部分,如`string[start:end]`。字符串截取使用`in`操作符檢查一個字符串是否包含另一個字符串,使用`find()`或`index()`方法查找子串位置。字符串查找使用`replace()`方法替換字符串中的指定子串。字符串替換0201030405字符串常用操作一種用于匹配字符串模式的強大工具,使用特定的元字符和語法規(guī)則構(gòu)建模式。正則表達式簡介Python標(biāo)準(zhǔn)庫中的正則表達式模塊,提供正則表達式的相關(guān)操作和功能。re模塊包括普通字符、元字符、特殊序列、限定符等,用于構(gòu)建匹配模式。正則表達式語法使用`re.match()`、`re.search()`、`re.findall()`等方法進行模式匹配和搜索。正則表達式操作正則表達式應(yīng)用03數(shù)據(jù)格式化之列表、元組與字典處理列表推導(dǎo)式是一種簡潔的構(gòu)造列表的方法,通過一個表達式和一個或多個循環(huán)語句來快速生成列表。例如,`[x2forxinrange(10)]`可以生成一個包含0到9的平方的列表。生成器表達式與列表推導(dǎo)式類似,但生成器表達式使用圓括號`()`而不是方括號`[]`,并且生成的是一個生成器對象,可以節(jié)省內(nèi)存。例如,`(x2forxinrange(10))`生成一個生成器,每次迭代時計算一個平方值。列表推導(dǎo)式與生成器表達式元組是不可變的序列類型,一旦創(chuàng)建就不能修改其元素。這使得元組更加安全,可以用作字典的鍵或集合的元素。不可變性由于元組是不可變的,其元素在內(nèi)存中的位置是固定的,因此可以通過索引快速訪問元組中的元素??焖僭L問元組常用于表示一組相關(guān)的數(shù)據(jù),如坐標(biāo)、日期、時間等。此外,在處理具有固定結(jié)構(gòu)的數(shù)據(jù)時,使用元組可以提高代碼的可讀性和效率。應(yīng)用場景元組特性及應(yīng)用場景是一種簡潔的構(gòu)造字典的方法,通過一個表達式和一個或多個循環(huán)語句來快速生成字典。例如,`{x:x2forxinrange(10)}`可以生成一個字典,其中鍵是0到9的整數(shù),值是對應(yīng)的平方。字典推導(dǎo)式字典提供了豐富的操作方法,如添加、刪除、修改鍵值對,獲取鍵或值列表,檢查鍵是否存在等。熟練掌握這些操作技巧可以提高處理字典的效率。操作技巧字典推導(dǎo)式及操作技巧Python中的集合類型支持多種集合運算,如并集、交集、差集、對稱差集等。這些運算可以方便地處理具有相同元素的不同集合之間的關(guān)系。集合運算集合的一個重要特性是元素不重復(fù)。因此,可以使用集合來進行去重處理。例如,將一個列表轉(zhuǎn)換為集合可以去除其中的重復(fù)元素。需要注意的是,轉(zhuǎn)換為集合后元素的順序可能會改變。去重處理集合運算與去重處理04數(shù)據(jù)格式化之JSON處理JSON(JavaScriptObjectNotation)是一種輕量級的數(shù)據(jù)交換格式,易于閱讀和編寫。數(shù)組由方括號[]包圍,數(shù)組元素之間使用逗號分隔。JSON采用鍵值對的方式來組織數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu)包括對象、數(shù)組、字符串、數(shù)字、布爾值和null。對象由花括號{}包圍,鍵值對之間使用逗號分隔,鍵和值之間使用冒號分隔。JSON數(shù)據(jù)結(jié)構(gòu)簡介使用json.dump()方法將Python對象編碼為JSON格式并寫入文件。使用json.dumps()方法將Python對象編碼為JSON字符串。Python內(nèi)置的json模塊提供了對JSON數(shù)據(jù)的支持,包括編碼和解碼功能。使用json.loads()方法將JSON字符串解碼為Python對象。使用json.load()方法從文件中讀取JSON格式數(shù)據(jù)并解碼為Python對象。Python中JSON模塊使用方法0103020405將一個Python字典編碼為JSON字符串。將一個JSON字符串解碼為Python字典。JSON編碼與解碼過程演示解碼過程示例編碼過程示例JSON數(shù)據(jù)格式校驗使用json.JSONDecoder類進行JSON數(shù)據(jù)格式校驗,可以自定義校驗規(guī)則。使用第三方庫如jsonschema進行更復(fù)雜的JSON數(shù)據(jù)格式校驗,支持對數(shù)據(jù)結(jié)構(gòu)、類型、范圍等進行校驗。校驗過程中可能出現(xiàn)的錯誤類型和處理方法,如語法錯誤、類型錯誤等。05數(shù)據(jù)格式化之XML處理XML是一種標(biāo)記語言,用于描述和傳輸數(shù)據(jù)。標(biāo)記語言XML數(shù)據(jù)由元素構(gòu)成,每個元素由開始標(biāo)簽、內(nèi)容和結(jié)束標(biāo)簽組成。元素與標(biāo)簽元素可以包含屬性,提供關(guān)于元素的額外信息。屬性XML支持命名空間,用于區(qū)分不同來源的元素和屬性。命名空間XML數(shù)據(jù)結(jié)構(gòu)簡介123Python標(biāo)準(zhǔn)庫中的ElementTree模塊提供了簡單的API來解析和創(chuàng)建XML文檔。ElementTreelxml是ElementTree的一個擴展,提供了更強大的功能和更好的性能。lxml導(dǎo)入相應(yīng)的模塊,然后利用模塊中提供的函數(shù)和方法來解析XML文檔或創(chuàng)建新的XML文檔。使用方法Python中XML模塊使用方法XML編碼與解碼過程演示編碼將Python對象轉(zhuǎn)換為XML格式的過程稱為編碼。可以使用ElementTree或lxml模塊中的函數(shù)將Python對象編碼為XML字符串或文件。解碼將XML格式的數(shù)據(jù)轉(zhuǎn)換為Python對象的過程稱為解碼。可以使用ElementTree或lxml模塊中的函數(shù)將XML字符串或文件解碼為Python對象,如元素樹或字典。XML數(shù)據(jù)格式校驗在Python中,可以使用ElementTree或lxml模塊中的驗證函數(shù)對XML文檔進行DTD或Schema驗證。需要提供相應(yīng)的DTD或Schema文件,并將XML文檔作為輸入進行驗證。使用方法XML文檔可以使用文檔類型定義(DTD)進行驗證,確保文檔的結(jié)構(gòu)和內(nèi)容符合特定的規(guī)范。DTD驗證XMLSchema是一種更強大的驗證機制,提供了更豐富的數(shù)據(jù)類型和更嚴(yán)格的驗證規(guī)則。Schema驗證06數(shù)據(jù)格式化之CSV處理CSV(Comma-SeparatedValues)格式:一種簡單的文件格式,用于存儲表格數(shù)據(jù),如電子表格或數(shù)據(jù)庫。通用性:CSV文件可以被任何可以處理純文本的應(yīng)用程序讀取和寫入,具有極高的通用性。數(shù)據(jù)結(jié)構(gòu):由任意數(shù)量的記錄組成,記錄之間以某種換行符分隔;每條記錄由字段組成,字段之間的分隔符是其他字符或字符串,最常見的是逗號或制表符。CSV數(shù)據(jù)結(jié)構(gòu)簡介Python標(biāo)準(zhǔn)庫中的csv模塊提供了讀取和寫入CSV文件的功能。csv模塊概述讀取CSV文件寫入CSV文件示例代碼使用csv.reader()函數(shù)讀取CSV文件,返回一個reader對象,可以遍歷文件的每一行。使用csv.writer()函數(shù)寫入CSV文件,創(chuàng)建一個writer對象,調(diào)用writerow()或writerows()方法寫入數(shù)據(jù)。展示如何使用csv模塊讀取和寫入CSV文件。Python中CSV模塊使用方法編碼過程將Python數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為CSV格式的字符串,可以使用csv.writer()函數(shù)實現(xiàn)。解碼過程將CSV格式的字符串轉(zhuǎn)換為Python數(shù)據(jù)結(jié)構(gòu),可以使用csv.reader()函數(shù)實現(xiàn)。編碼示例展示如何將Python列表轉(zhuǎn)換為CSV格式的字符串。解碼示例展示如何將CSV格式
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年環(huán)保公益活動策劃執(zhí)行合同
- 2024年物流人才培養(yǎng)與交流合同
- 系統(tǒng)開發(fā)課程設(shè)計日志
- 托班喂飯課程設(shè)計
- 蘇教版小學(xué)數(shù)學(xué)課程設(shè)計
- 藝術(shù)治療繪畫課程設(shè)計
- 廣東電網(wǎng)公司110kV車載移動式變電站技術(shù)規(guī)范書
- 洗滌廢水處理課程設(shè)計
- 編輯文章課程設(shè)計意圖
- 網(wǎng)頁設(shè)計課程設(shè)計總結(jié)
- 國家中長期科技發(fā)展規(guī)劃綱要2021-2035
- GB/T 9128.2-2023鋼制管法蘭用金屬環(huán)墊第2部分:Class系列
- 網(wǎng)絡(luò)經(jīng)濟學(xué)PPT完整全套教學(xué)課件
- 2023年主治醫(yī)師(中級)-臨床醫(yī)學(xué)檢驗學(xué)(中級)代碼:352考試參考題庫附帶答案
- 機械原理課程設(shè)計鎖梁自動成型機床切削機構(gòu)
- 順產(chǎn)臨床路徑
- 人教版培智一年級上生活適應(yīng)教案
- 推動架機械加工工序卡片
- RoHS檢測報告完整版
- 中國近現(xiàn)代史綱要(上海建橋?qū)W院)智慧樹知到答案章節(jié)測試2023年
- 同濟大學(xué)土力學(xué)試卷2023
評論
0/150
提交評論