Python文件和數(shù)據(jù)格式化高級(jí)技巧_第1頁(yè)
Python文件和數(shù)據(jù)格式化高級(jí)技巧_第2頁(yè)
Python文件和數(shù)據(jù)格式化高級(jí)技巧_第3頁(yè)
Python文件和數(shù)據(jù)格式化高級(jí)技巧_第4頁(yè)
Python文件和數(shù)據(jù)格式化高級(jí)技巧_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(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ù)格式化高級(jí)技巧目錄文件操作與讀寫(xiě)數(shù)據(jù)格式化基礎(chǔ)高級(jí)字符串格式化技巧列表、元組和字典格式化技巧日期和時(shí)間格式化處理異常處理與日志記錄中的格式化應(yīng)用01文件操作與讀寫(xiě)使用`open()`函數(shù)打開(kāi)文件open()函數(shù)用于打開(kāi)一個(gè)文件,并返回一個(gè)文件對(duì)象??梢灾付ù蜷_(kāi)模式(如讀取、寫(xiě)入、追加等)和編碼方式。使用`with`語(yǔ)句自動(dòng)關(guān)閉文件使用`with`語(yǔ)句可以確保文件在使用完畢后自動(dòng)關(guān)閉,無(wú)需手動(dòng)調(diào)用`close()`方法。打開(kāi)與關(guān)閉文件使用`read()`方法可以一次性讀取整個(gè)文件的內(nèi)容。讀取整個(gè)文件使用`readlines()`方法或循環(huán)遍歷文件對(duì)象可以逐行讀取文件內(nèi)容。逐行讀取文件使用`read(n)`方法可以指定讀取文件的字節(jié)數(shù)。指定讀取字節(jié)數(shù)讀取文件內(nèi)容123使用`write()`方法可以將字符串寫(xiě)入文件。寫(xiě)入字符串使用`writelines()`方法可以一次性寫(xiě)入多行數(shù)據(jù)。寫(xiě)入多行數(shù)據(jù)使用追加模式打開(kāi)文件,可以將新的內(nèi)容追加到文件末尾,而不會(huì)覆蓋原有內(nèi)容。追加寫(xiě)入寫(xiě)入文件內(nèi)容使用`os.getcwd()`方法可以獲取當(dāng)前工作目錄的路徑。獲取當(dāng)前工作目錄使用`os.path.join()`方法可以拼接路徑,確保路徑的正確性。拼接路徑使用`os.path.abspath()`方法可以獲取文件的絕對(duì)路徑。獲取文件絕對(duì)路徑使用`os.path.split()`方法可以分割路徑,獲取目錄名和文件名。分割路徑文件路徑處理02數(shù)據(jù)格式化基礎(chǔ)Python中的整數(shù)和浮點(diǎn)數(shù)可以用于數(shù)學(xué)計(jì)算和格式化輸出。數(shù)值類(lèi)型字符串是文本數(shù)據(jù),可以通過(guò)格式化方法轉(zhuǎn)換為其他類(lèi)型。字符串類(lèi)型用于存儲(chǔ)多個(gè)元素的數(shù)據(jù)結(jié)構(gòu),可以轉(zhuǎn)換為字符串進(jìn)行輸出。列表和元組用于存儲(chǔ)鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu),可以通過(guò)格式化方法轉(zhuǎn)換為字符串。字典類(lèi)型數(shù)據(jù)類(lèi)型與轉(zhuǎn)換%運(yùn)算符使用`%`運(yùn)算符可以將變量插入到字符串中的指定位置。f-string在Python3.6及以上版本中,可以使用f-string進(jìn)行字符串格式化,語(yǔ)法更簡(jiǎn)潔。format()方法使用字符串的`format()`方法,可以通過(guò)位置或關(guān)鍵字參數(shù)進(jìn)行格式化。字符串格式化方法使用`print()`函數(shù)可以將格式化的字符串輸出到控制臺(tái)。print()函數(shù)確??刂婆_(tái)使用的編碼與輸出的字符串編碼一致,以避免亂碼問(wèn)題??刂婆_(tái)編碼格式化輸出到控制臺(tái)文件操作基礎(chǔ)了解如何打開(kāi)、寫(xiě)入和關(guān)閉文件是進(jìn)行文件輸出的前提。寫(xiě)入格式化的字符串使用文件對(duì)象的`write()`方法,可以將格式化的字符串寫(xiě)入到文件中。文件編碼在打開(kāi)文件時(shí)指定正確的編碼方式,以確保數(shù)據(jù)正確寫(xiě)入和讀取。格式化輸出到文件03高級(jí)字符串格式化技巧03嵌套使用f-string可以在一個(gè)f-string中嵌套使用另一個(gè)f-string,實(shí)現(xiàn)更復(fù)雜的字符串格式化需求。01f-string基本用法通過(guò)在字符串前加上`f`或`F`,在字符串內(nèi)使用`{}`來(lái)引用變量或表達(dá)式。02格式化數(shù)字和日期使用f-string可以方便地格式化數(shù)字和日期,例如設(shè)置精度、寬度、對(duì)齊方式等。使用f-string進(jìn)行字符串格式化格式化數(shù)字和日期與f-string類(lèi)似,使用format方法也可以方便地格式化數(shù)字和日期。自定義格式通過(guò)定義格式字符串,可以實(shí)現(xiàn)更靈活的字符串格式化,例如自定義數(shù)字的顯示格式、日期的顯示格式等。format方法基本用法使用字符串的`format()`方法來(lái)格式化字符串,可以通過(guò)位置參數(shù)或關(guān)鍵字參數(shù)來(lái)傳遞值。使用format方法進(jìn)行字符串格式化處理特殊字符和轉(zhuǎn)義序列特殊字符處理在字符串中,某些特殊字符如換行符、制表符等需要使用轉(zhuǎn)義序列來(lái)表示。Python提供了多種轉(zhuǎn)義序列來(lái)表示這些特殊字符。原始字符串處理通過(guò)在字符串前加上`r`或`R`,可以定義原始字符串,原始字符串中的轉(zhuǎn)義序列不會(huì)被處理,而是直接作為普通字符輸出。多行字符串處理Python中的多行字符串可以使用三個(gè)引號(hào)(`'''`或`"""`)來(lái)定義,多行字符串中的換行符會(huì)被保留。原始多行字符串處理通過(guò)在多行字符串前加上`r`或`R`,可以定義原始多行字符串,其中的轉(zhuǎn)義序列不會(huì)被處理,而是直接作為普通字符輸出。同時(shí),多行字符串中的換行符也會(huì)被保留。多行字符串和原始字符串處理04列表、元組和字典格式化技巧使用簡(jiǎn)潔的語(yǔ)法快速生成列表,例如`[x2forxinrange(10)]`生成一個(gè)包含0到9的平方的列表。類(lèi)似于列表推導(dǎo)式,但生成的是一個(gè)生成器對(duì)象,可以節(jié)省內(nèi)存。例如`(x2forxinrange(10))`生成一個(gè)生成器,每次迭代計(jì)算一個(gè)平方值。列表推導(dǎo)式與生成器表達(dá)式應(yīng)用生成器表達(dá)式列表推導(dǎo)式元組解包將元組中的值賦給多個(gè)變量,例如`a,b=(1,2)`將1賦給a,2賦給b。要點(diǎn)一要點(diǎn)二交換變量值不使用臨時(shí)變量交換兩個(gè)變量的值,例如`a,b=b,a`。元組解包與交換變量值操作字典推導(dǎo)式構(gòu)建字典結(jié)構(gòu)字典推導(dǎo)式:使用簡(jiǎn)潔的語(yǔ)法快速構(gòu)建字典,例如{x:x2forxinrange(10)}構(gòu)建一個(gè)鍵為0到9,值為對(duì)應(yīng)平方的字典。遍歷列表和元組使用for循環(huán)遍歷列表或元組,并使用format()或f-string格式化輸出每個(gè)元素。遍歷字典使用for循環(huán)遍歷字典的鍵或值,并使用format()或f-string格式化輸出每個(gè)鍵或值。同時(shí),也可以使用items()方法同時(shí)遍歷鍵和值。遍歷列表、元組和字典時(shí)格式化05日期和時(shí)間格式化處理Python的datetime模塊提供了獲取當(dāng)前日期和時(shí)間的功能。通過(guò)調(diào)用datetime.datetime.now()方法,可以獲取當(dāng)前的日期和時(shí)間信息。使用datetime模塊如果需要獲取特定時(shí)區(qū)的當(dāng)前時(shí)間,可以使用pytz模塊。首先創(chuàng)建時(shí)區(qū)對(duì)象,然后使用該時(shí)區(qū)的localize方法將當(dāng)前時(shí)間轉(zhuǎn)換為該時(shí)區(qū)的時(shí)間。獲取特定時(shí)區(qū)的當(dāng)前時(shí)間獲取當(dāng)前日期和時(shí)間信息使用datetime對(duì)象的timestamp()方法可以將日期對(duì)象轉(zhuǎn)換為時(shí)間戳,即從1970年1月1日00:00:00UTC到現(xiàn)在的秒數(shù)。日期對(duì)象轉(zhuǎn)換為時(shí)間戳使用datetime模塊的fromtimestamp()方法可以將時(shí)間戳轉(zhuǎn)換為日期對(duì)象。時(shí)間戳轉(zhuǎn)換為日期對(duì)象使用datetime模塊的strptime()方法可以將日期和時(shí)間的字符串表示形式轉(zhuǎn)換為日期對(duì)象。需要指定字符串的格式。字符串轉(zhuǎn)換為日期對(duì)象日期和時(shí)間對(duì)象之間的轉(zhuǎn)換使用strftime()方法datetime對(duì)象的strftime()方法可以將日期和時(shí)間格式化為指定的字符串格式??梢允褂貌煌母袷交噶顏?lái)指定年、月、日、時(shí)、分、秒等信息的顯示格式。使用strftime()格式化指令strftime()方法支持多種格式化指令,如%Y表示四位數(shù)的年份,%m表示兩位數(shù)的月份,%d表示兩位數(shù)的日期等??梢愿鶕?jù)需要組合這些指令來(lái)自定義輸出格式。自定義日期和時(shí)間格式處理時(shí)區(qū)問(wèn)題以及夏令時(shí)影響pytz模塊提供了對(duì)時(shí)區(qū)的支持,可以創(chuàng)建時(shí)區(qū)對(duì)象并進(jìn)行時(shí)區(qū)轉(zhuǎn)換。通過(guò)使用pytz,可以處理不同時(shí)區(qū)之間的時(shí)間差異。使用pytz模塊處理時(shí)區(qū)夏令時(shí)會(huì)對(duì)時(shí)間的計(jì)算產(chǎn)生影響。在使用datetime模塊處理時(shí)間時(shí),需要注意夏令時(shí)的變化??梢允褂胐atetime對(duì)象的dst()方法來(lái)獲取夏令時(shí)時(shí)差信息,并根據(jù)需要進(jìn)行調(diào)整。處理夏令時(shí)影響06異常處理與日志記錄中的格式化應(yīng)用使用`try-except`語(yǔ)句塊捕獲異常,并通過(guò)`traceback`模塊格式化輸出異常信息,包括異常類(lèi)型、異常值和堆棧跟蹤信息。使用`sys.exc_info()`函數(shù)獲取當(dāng)前處理的異常信息,并通過(guò)`format_exception()`函數(shù)將其格式化為字符串,方便后續(xù)處理或輸出。自定義異常類(lèi),并在其中實(shí)現(xiàn)`__str__()`方法,返回格式化的異常信息,以便在捕獲該異常時(shí)能夠直接輸出易于理解的錯(cuò)誤信息。異常信息捕獲及格式化使用`logging.basicConfig()`函數(shù)配置日志記錄器的輸出格式,包括日志級(jí)別、日志時(shí)間、日志信息等內(nèi)容。在日志記錄時(shí),使用格式化字符串指定日志信息的輸出格式,如`("User%sloggedinsuccessfully.",user_name)`。使用Python內(nèi)置的`logging`模塊進(jìn)行日志記錄,通過(guò)設(shè)置不同的日志級(jí)別(如DEBUG、INFO、WARNING、ERROR等),控制日志信息的輸出。日志記錄級(jí)別設(shè)置及格式化自定義異常類(lèi)時(shí),繼承自Python內(nèi)置的`Exception`類(lèi)或其子類(lèi),并在其中實(shí)現(xiàn)`__str__()`方法,返回格式化的異常信息。在捕獲自定義異常時(shí),可以通過(guò)訪問(wèn)異常對(duì)象的屬性來(lái)獲取額外的異常信息,并將其格式化為字符串進(jìn)行輸出。在自定義異常類(lèi)中,可以使用類(lèi)屬性或?qū)嵗龑傩詠?lái)存儲(chǔ)額外

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論