




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
匯報(bào)人:XX2024-01-11Python文件和數(shù)據(jù)格式化編程指南目錄Python文件操作基礎(chǔ)數(shù)據(jù)格式化基礎(chǔ)文件與數(shù)據(jù)格式化應(yīng)用Python高級(jí)文件操作技巧目錄數(shù)據(jù)清洗與預(yù)處理實(shí)戰(zhàn)案例Python自動(dòng)化辦公應(yīng)用實(shí)例01Python文件操作基礎(chǔ)使用`open()`函數(shù)打開(kāi)文件,需要指定文件路徑和打開(kāi)模式。使用`close()`方法關(guān)閉文件,釋放資源。文件打開(kāi)與關(guān)閉關(guān)閉文件打開(kāi)文件'r',用于讀取文件內(nèi)容。讀取模式'w',用于寫(xiě)入文件內(nèi)容,會(huì)覆蓋原有內(nèi)容。寫(xiě)入模式'a',用于在文件末尾追加內(nèi)容。追加模式'b',用于以二進(jìn)制方式讀寫(xiě)文件。二進(jìn)制模式文件讀寫(xiě)模式完整的文件路徑,包括盤(pán)符和目錄。絕對(duì)路徑相對(duì)于當(dāng)前執(zhí)行腳本的路徑。相對(duì)路徑使用`os.path.join()`函數(shù)拼接路徑。路徑拼接文件路徑處理文件不存在異常FileNotFoundError,當(dāng)文件不存在時(shí)觸發(fā)。文件讀寫(xiě)異常IOError,當(dāng)文件讀寫(xiě)過(guò)程中出現(xiàn)錯(cuò)誤時(shí)觸發(fā)。文件異常處理02數(shù)據(jù)格式化基礎(chǔ)數(shù)據(jù)類(lèi)型與轉(zhuǎn)換數(shù)據(jù)類(lèi)型Python中的基本數(shù)據(jù)類(lèi)型包括整數(shù)、浮點(diǎn)數(shù)、布爾值、字符串等。類(lèi)型轉(zhuǎn)換可以使用內(nèi)置函數(shù)如`int()`,`float()`,`str()`等進(jìn)行數(shù)據(jù)類(lèi)型轉(zhuǎn)換。str.format()方法使用大括號(hào)`{}`作為占位符,通過(guò)`str.format()`方法進(jìn)行格式化,例如`"Hello,{}!".format(name)`。f-string格式化在Python3.6及以上版本,可以使用f-string進(jìn)行格式化,例如`f"Hello,{name}!"`。舊式字符串格式化使用`%`操作符進(jìn)行格式化,例如`"Hello,%s!"%name`。字符串格式化可以使用`format()`方法或f-string進(jìn)行整數(shù)格式化,例如`"{:0>5d}".format(num)`表示將整數(shù)num格式化為寬度為5的零填充字符串。整數(shù)格式化可以使用`format()`方法或f-string進(jìn)行浮點(diǎn)數(shù)格式化,例如`"{:.2f}".format(num)`表示將浮點(diǎn)數(shù)num格式化為保留兩位小數(shù)的字符串。浮點(diǎn)數(shù)格式化數(shù)值格式化日期和時(shí)間表示Python中可以使用datetime模塊表示日期和時(shí)間。日期和時(shí)間格式化可以使用`strftime()`方法進(jìn)行日期和時(shí)間的格式化,例如`datetime.now().strftime("%Y-%m-%d%H:%M:%S")`表示將當(dāng)前時(shí)間格式化為"年-月-日時(shí):分:秒"的字符串形式。日期和時(shí)間格式化03文件與數(shù)據(jù)格式化應(yīng)用文本文件讀取使用Python內(nèi)置函數(shù)`open()`打開(kāi)文本文件,通過(guò)指定模式(如讀取模式`'r'`)進(jìn)行讀取操作。文本文件寫(xiě)入同樣使用`open()`函數(shù),但指定寫(xiě)入模式(如`'w'`或追加模式`'a'`)進(jìn)行寫(xiě)入操作。文本格式化利用字符串格式化方法(如`format()`函數(shù)或f-string)對(duì)文本進(jìn)行格式化處理,以便輸出或保存到文件中。文本文件讀寫(xiě)與格式化使用Python標(biāo)準(zhǔn)庫(kù)中的`csv`模塊,通過(guò)創(chuàng)建`csv.reader`對(duì)象來(lái)讀取CSV文件內(nèi)容。CSV文件讀取利用`csv.writer`對(duì)象,將數(shù)據(jù)按照CSV格式寫(xiě)入到文件中。CSV文件寫(xiě)入在讀取或?qū)懭隒SV文件時(shí),對(duì)數(shù)據(jù)進(jìn)行適當(dāng)?shù)母袷交幚恚甾D(zhuǎn)換數(shù)據(jù)類(lèi)型、處理缺失值等。數(shù)據(jù)格式化CSV文件讀寫(xiě)與格式化JSON文件讀取使用Python標(biāo)準(zhǔn)庫(kù)中的`json`模塊,通過(guò)`json.load()`函數(shù)讀取JSON文件內(nèi)容。JSON文件寫(xiě)入利用`json.dump()`函數(shù),將數(shù)據(jù)按照J(rèn)SON格式寫(xiě)入到文件中。數(shù)據(jù)格式化在讀取或?qū)懭隞SON文件時(shí),對(duì)數(shù)據(jù)進(jìn)行序列化和反序列化操作,確保數(shù)據(jù)的正確性和可讀性。JSON文件讀寫(xiě)與格式化030201XML文件讀取使用Python標(biāo)準(zhǔn)庫(kù)中的`xml.etree.ElementTree`模塊,通過(guò)解析XML文件構(gòu)建元素樹(shù)(ElementTree)進(jìn)行讀取操作。XML文件寫(xiě)入利用`ElementTree`對(duì)象的`write()`方法,將元素樹(shù)按照XML格式寫(xiě)入到文件中。數(shù)據(jù)格式化在讀取或?qū)懭隭ML文件時(shí),對(duì)數(shù)據(jù)進(jìn)行適當(dāng)?shù)母袷交幚恚缣砑用臻g、處理特殊字符等。同時(shí),可以利用XPath或XSLT等技術(shù)對(duì)數(shù)據(jù)進(jìn)行更復(fù)雜的處理和轉(zhuǎn)換。XML文件讀寫(xiě)與格式化04Python高級(jí)文件操作技巧03逐行讀取文件使用`for`循環(huán)和`readline()`方法逐行讀取文件內(nèi)容,同時(shí)文件指針自動(dòng)移動(dòng)到下一行。01文件指針定位使用`seek()`方法可以將文件指針移動(dòng)到指定位置,便于隨機(jī)訪(fǎng)問(wèn)文件內(nèi)容。02文件指針回退通過(guò)`tell()`方法獲取當(dāng)前文件指針位置,結(jié)合`seek()`可實(shí)現(xiàn)文件指針的回退操作。文件指針操作搜索特定內(nèi)容使用`re`模塊中的正則表達(dá)式進(jìn)行文件內(nèi)容的搜索,支持復(fù)雜匹配模式。替換文件內(nèi)容通過(guò)讀取文件內(nèi)容到內(nèi)存,使用`replace()`方法進(jìn)行替換后,再將修改后的內(nèi)容寫(xiě)回文件。批量處理文件遍歷指定目錄下的所有文件,對(duì)每個(gè)文件進(jìn)行搜索與替換操作。文件內(nèi)容搜索與替換逐行處理大文件結(jié)合文件指針操作和逐行讀取方法,可以逐行處理大文件內(nèi)容,降低內(nèi)存消耗。使用生成器處理大文件將大文件處理邏輯封裝成生成器函數(shù),實(shí)現(xiàn)惰性求值,按需讀取和處理文件內(nèi)容。分塊讀取大文件通過(guò)設(shè)定合適的緩沖區(qū)大小,使用`read()`方法分塊讀取大文件內(nèi)容,避免一次性加載到內(nèi)存導(dǎo)致內(nèi)存溢出。大文件處理技巧123在打開(kāi)文件時(shí),通過(guò)`encoding`參數(shù)指定文件的編碼格式,如UTF-8、GBK等。指定文件編碼格式使用`encode()`和`decode()`方法進(jìn)行字符串與字節(jié)串之間的轉(zhuǎn)換,實(shí)現(xiàn)編碼與解碼操作。編碼與解碼操作通過(guò)設(shè)置`errors`參數(shù)為`'ignore'`或`'replace'`等方式,處理文件中存在的編碼錯(cuò)誤問(wèn)題。處理編碼錯(cuò)誤文件編碼與解碼05數(shù)據(jù)清洗與預(yù)處理實(shí)戰(zhàn)案例數(shù)據(jù)清洗是對(duì)數(shù)據(jù)進(jìn)行重新審查和校驗(yàn)的過(guò)程,目的在于刪除重復(fù)信息、糾正存在的錯(cuò)誤,并提供數(shù)據(jù)一致性。數(shù)據(jù)清洗定義Pandas、NumPy等Python庫(kù)是進(jìn)行數(shù)據(jù)清洗的常用工具,它們提供了豐富的數(shù)據(jù)處理功能。常用工具數(shù)據(jù)清洗概述及工具介紹VS通過(guò)Pandas庫(kù)中的isnull()或isna()函數(shù)識(shí)別數(shù)據(jù)中的缺失值。缺失值處理方法根據(jù)數(shù)據(jù)的分布和特性,選擇合適的方法處理缺失值,如刪除含有缺失值的行或列、使用均值、中位數(shù)或眾數(shù)填充等。缺失值識(shí)別缺失值處理實(shí)戰(zhàn)案例異常值處理實(shí)戰(zhàn)案例利用箱線(xiàn)圖、散點(diǎn)圖等可視化方法,或使用IQR(四分位距)等統(tǒng)計(jì)方法識(shí)別異常值。異常值識(shí)別根據(jù)異常值的性質(zhì)和數(shù)據(jù)的分布情況,選擇刪除異常值、使用中位數(shù)或均值替換異常值等方法。異常值處理方法數(shù)據(jù)類(lèi)型轉(zhuǎn)換01將數(shù)據(jù)從一種類(lèi)型轉(zhuǎn)換為另一種類(lèi)型,如將字符串轉(zhuǎn)換為數(shù)值型數(shù)據(jù)。數(shù)據(jù)標(biāo)準(zhǔn)化與歸一化02通過(guò)標(biāo)準(zhǔn)化(將數(shù)據(jù)轉(zhuǎn)換為均值為0,標(biāo)準(zhǔn)差為1的分布)或歸一化(將數(shù)據(jù)縮放到[0,1]或[-1,1]的區(qū)間)等方法,消除數(shù)據(jù)間的量綱差異,提高模型的收斂速度。編碼轉(zhuǎn)換03對(duì)于類(lèi)別型數(shù)據(jù),可以使用獨(dú)熱編碼(One-HotEncoding)、標(biāo)簽編碼(LabelEncoding)等方法將其轉(zhuǎn)換為數(shù)值型數(shù)據(jù),以便用于機(jī)器學(xué)習(xí)模型。數(shù)據(jù)轉(zhuǎn)換實(shí)戰(zhàn)案例06Python自動(dòng)化辦公應(yīng)用實(shí)例批量重命名文件實(shí)例在重命名過(guò)程中,對(duì)于可能出現(xiàn)的錯(cuò)誤(如文件不存在、權(quán)限不足等),需要進(jìn)行異常處理并記錄相關(guān)日志,以便后續(xù)排查問(wèn)題。錯(cuò)誤處理和日志記錄使用Python的os模塊,可以實(shí)現(xiàn)對(duì)指定目錄下所有文件的批量重命名操作,支持按照自定義規(guī)則進(jìn)行文件名修改。批量重命名文件通過(guò)正則表達(dá)式或者字符串操作,定義文件名修改的規(guī)則,例如添加前綴、后綴、替換指定字符等。文件名規(guī)則定義數(shù)據(jù)讀取和處理使用pandas等數(shù)據(jù)處理庫(kù),讀取數(shù)據(jù)源(如Excel、CSV、數(shù)據(jù)庫(kù)等)中的數(shù)據(jù),并進(jìn)行清洗、轉(zhuǎn)換等處理操作。報(bào)表模板定義使用Python的jinja2等模板引擎,定義報(bào)表的模板,包括表格樣式、數(shù)據(jù)展示方式等。數(shù)據(jù)填充和報(bào)表生成將處理后的數(shù)據(jù)按照?qǐng)?bào)表模板進(jìn)行填充,生成最終的報(bào)表文件(如Excel、PDF等)。批量生成報(bào)表實(shí)例自動(dòng)化發(fā)送郵件實(shí)例使用Python的email模塊,構(gòu)建郵件的正文、附件等內(nèi)容。郵件發(fā)送配置配置SMTP服務(wù)器信息,包括服務(wù)器地址、端口號(hào)、用戶(hù)名、密碼等。郵件發(fā)送和異常處理調(diào)用SMTP服務(wù)器的發(fā)送接口,將準(zhǔn)備好的郵件內(nèi)容發(fā)送給指定的收件人,并對(duì)發(fā)送過(guò)程中可能出現(xiàn)的異常進(jìn)行處理。郵件內(nèi)容
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年文化旅游演藝項(xiàng)目策劃與市場(chǎng)細(xì)分策略研究報(bào)告
- 工業(yè)互聯(lián)網(wǎng)平臺(tái)邊緣計(jì)算硬件架構(gòu)在智能家居行業(yè)的創(chuàng)新應(yīng)用報(bào)告
- 電影院運(yùn)營(yíng)管理方案
- 儀表高級(jí)技工練習(xí)卷附答案(一)
- 工業(yè)互聯(lián)網(wǎng)平臺(tái)聯(lián)邦學(xué)習(xí)隱私保護(hù)在工業(yè)供應(yīng)鏈管理中的實(shí)踐與挑戰(zhàn)報(bào)告
- 高效能異步電機(jī)設(shè)計(jì)行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書(shū)
- 鄉(xiāng)村特色農(nóng)產(chǎn)品市集企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力項(xiàng)目商業(yè)計(jì)劃書(shū)
- 便攜式生物戰(zhàn)劑檢測(cè)儀企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力項(xiàng)目商業(yè)計(jì)劃書(shū)
- 高速Thunderbolt擴(kuò)展塢行業(yè)跨境出海項(xiàng)目商業(yè)計(jì)劃書(shū)
- 數(shù)字貨幣錢(qián)包安全企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力項(xiàng)目商業(yè)計(jì)劃書(shū)
- 公路建設(shè)項(xiàng)目施工單位工程質(zhì)量責(zé)任登記表
- 老年社會(huì)保障總結(jié)課件
- 三級(jí)動(dòng)火證 模板
- 評(píng)語(yǔ)大全之國(guó)家自然科學(xué)基金評(píng)語(yǔ)
- 電瓶車(chē)每月檢查表
- 獸藥監(jiān)管法規(guī)解讀課件
- 外貿(mào)業(yè)務(wù)員KPI考核量表
- 案例onyx使用內(nèi)容
- 四川音樂(lè)學(xué)院綿陽(yáng)藝術(shù)學(xué)院科研量化管理暫行辦法
- 常用動(dòng)火作業(yè)風(fēng)險(xiǎn)告知卡(可編輯)
- 計(jì)算機(jī)技術(shù)碩士專(zhuān)業(yè)學(xué)位授權(quán)點(diǎn)申報(bào)研究演示課件(PPT 39頁(yè))
評(píng)論
0/150
提交評(píng)論