【資料圖】
在 asyncio 中,我們還可以使用日志系統進行調試。日志系統可以將程序運行時的信息輸出到指定的日志文件或者控制臺中,從而方便我們查看程序運行時的狀態。
例如,我們定義了一個異步函數 coro(),如下所示:
import asyncioimport loggingasync def coro(): await asyncio.sleep(1) logging.error("除數不能為0") a = 1 / 0 await asyncio.sleep(1)async def main(): await coro()asyncio.run(main())
在上述代碼中,我們使用 logging 模塊輸出了一個錯誤信息。logging 模塊提供了多個日志級別,如 debug、info、warning、error 等等。在輸出日志信息時,我們可以指定日志級別,從而控制輸出信息的詳細程度,例如,使用 logging.error() 輸出的信息將會輸出到控制臺或者日志文件中,并且只有當日志級別設置為 error 時才會輸出。
在使用日志系統進行調試時,我們可以將日志級別設置為 DEBUG,從而輸出更為詳細的信息。例如,我們可以將代碼修改為如下所示:
import asyncioimport loggingasync def coro(): await asyncio.sleep(1) logging.debug("進入 coro 函數") a = 1 / 0 await asyncio.sleep(1)async def main(): logging.basicConfig(level=logging.DEBUG) await coro()asyncio.run(main())
在上述代碼中,我們使用 logging.basicConfig() 函數將日志級別設置為 DEBUG,從而輸出更為詳細的信息。當程序運行時,會在控制臺輸出以下信息:
DEBUG:root:進入 coro 函數
通過輸出的信息,我們可以知道程序在哪個函數中出現了錯誤,從而更方便地進行調試。
關鍵詞:
免責聲明:本網站所有信息,并不代表本站贊同其觀點和對其真實性負責,投資者據此操作,風險請自擔。
上一篇: 【環球速看料】孔德華
下一篇:最后一頁
額定功率是什么意思?其實就是設備在正常運行時形成的功率,額定電壓與額定電流相乘得出設備的額定功率。如果...
如何挑選不銹鋼?1、感覺不銹鋼產品的質感,一般是優質不銹鋼,色澤鮮艷,厚度適中,光滑,不要選擇表面上感...
地板有哪幾種材質?1、實木地板:它的木材特點是當氣候干燥時,木材里面水分釋出,而氣候潮濕,木材又會吸附...