python basicConfig()簡(jiǎn)介及用法舉例
一、什么是basicConfig?
logging.basicConfig()是 Pythonlogging模塊中最常用的配置函數(shù),用于一次性設(shè)置日志系統(tǒng)的基本參數(shù)(如日志級(jí)別、輸出格式、輸出位置等)。- 只需調(diào)用一次,后續(xù)所有日志輸出都會(huì)遵循這個(gè)配置。
二、basicConfig的常用參數(shù)
| 參數(shù) | 作用說(shuō)明 | 示例值 |
|---|---|---|
| level | 設(shè)置日志級(jí)別(只顯示大于等于該級(jí)別的日志) | logging.INFO, logging.DEBUG |
| filename | 指定日志輸出到的文件名(不指定則輸出到控制臺(tái)) | ‘app.log’ |
| filemode | 文件寫入模式,默認(rèn)為 ‘a’(追加),可設(shè)為 ‘w’(覆蓋) | ‘w’ |
| format | 日志輸出格式字符串 | ‘%(asctime)s - %(levelname)s - %(message)s’ |
| datefmt | 時(shí)間格式字符串 | ‘%Y-%m-%d %H:%M:%S’ |
| encoding | 文件編碼(僅當(dāng)指定 filename 時(shí)有效) | ‘utf-8’ |
三、默認(rèn)行為
- 如果不調(diào)用
basicConfig(),日志系統(tǒng)有默認(rèn)配置:- 日志級(jí)別為
WARNING,只顯示WARNING及以上級(jí)別的日志。 - 日志輸出到控制臺(tái)。
- 日志格式為:
LEVEL:logger_name:message,如:WARNING:root:demo
- 日志級(jí)別為
- 如果調(diào)用
basicConfig()但不傳參數(shù),效果與默認(rèn)配置一致。
四、你的代碼詳解
示例1
import logging
# logging.basicConfig()
logging.warning('demo')- 這里沒(méi)有調(diào)用
basicConfig(),直接輸出一條警告日志。 - 輸出結(jié)果:
WARNING:root:demo - 只會(huì)顯示
WARNING及以上級(jí)別的日志。
示例2
import logging
logging.basicConfig() # 日志格式:格式字符
logging.warning('demo')- 這里調(diào)用了
basicConfig(),但沒(méi)有傳參數(shù),效果與默認(rèn)配置一致。 - 輸出結(jié)果同上:
WARNING:root:demo
五、常見(jiàn)用法舉例
1. 設(shè)置日志級(jí)別
logging.basicConfig(level=logging.INFO)
logging.debug('調(diào)試信息') # 不會(huì)顯示
logging.info('普通信息') # 會(huì)顯示2. 設(shè)置日志格式
logging.basicConfig(
level=logging.DEBUG,
format='%(asctime)s - %(levelname)s - %(message)s'
)
logging.info('日志格式演示')
輸出示例:
2024-06-08 12:00:00,123 - INFO - 日志格式演示
3. 日志寫入文件
logging.basicConfig(
filename='myapp.log',
level=logging.ERROR,
format='%(asctime)s - %(levelname)s - %(message)s',
encoding='utf-8'
)
logging.error('寫入文件的錯(cuò)誤日志')六、常用格式化符號(hào)
| 占位符 | 說(shuō)明 |
|---|---|
| %(asctime)s | 日志時(shí)間 |
| %(levelname)s | 日志級(jí)別 |
| %(message)s | 日志內(nèi)容 |
| %(filename)s | 文件名 |
| %(lineno)d | 行號(hào) |
| %(name)s | 日志器名稱 |
| %(thread)d | 線程ID |
七、總結(jié)
basicConfig()用于一次性設(shè)置日志系統(tǒng)的基本參數(shù)。- 不傳參數(shù)時(shí),效果與默認(rèn)配置一致:只顯示
WARNING及以上日志,輸出到控制臺(tái),格式為LEVEL:root:message。 - 推薦根據(jù)實(shí)際需求設(shè)置日志級(jí)別、格式和輸出位置。
到此這篇關(guān)于python basicConfig()的文章就介紹到這了,更多相關(guān)python basicConfig()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 三種方法實(shí)現(xiàn)對(duì)Excel表格的讀寫
這篇文章主要介紹了python 三種方法實(shí)現(xiàn)對(duì)Excel表格的讀寫,幫助大家更好的利用python處理表格,感興趣的朋友可以了解下2020-11-11
Python實(shí)現(xiàn)曲線點(diǎn)抽稀算法的示例
本篇文章主要介紹了Python實(shí)現(xiàn)曲線點(diǎn)抽稀算法的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
python reverse反轉(zhuǎn)部分?jǐn)?shù)組的實(shí)例
今天小編就為大家分享一篇python reverse反轉(zhuǎn)部分?jǐn)?shù)組的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
對(duì)python cv2批量灰度圖片并保存的實(shí)例講解
今天小編就為大家分享一篇對(duì)python cv2批量灰度圖片并保存的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
python語(yǔ)言time庫(kù)和datetime庫(kù)基本使用詳解
這篇文章主要介紹了python語(yǔ)言time庫(kù)和datetime庫(kù)基本使用詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
棧和隊(duì)列數(shù)據(jù)結(jié)構(gòu)的基本概念及其相關(guān)的Python實(shí)現(xiàn)
這篇文章主要介紹了棧和隊(duì)列數(shù)據(jù)結(jié)構(gòu)的基本概念及其相關(guān)的Python實(shí)現(xiàn),先進(jìn)先出和后進(jìn)先出的知識(shí)也已經(jīng)成為了計(jì)算機(jī)學(xué)習(xí)中的老生常談了:D需要的朋友可以參考下2015-08-08
Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式
Python中日期和時(shí)間的處理涉及到time和datetime模塊,time模塊可實(shí)現(xiàn)時(shí)間戳與格式化時(shí)間字符串的轉(zhuǎn)換,而datetime模塊則提供更加直接易用的接口,本文詳細(xì)給大家介紹了Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式,需要的朋友可以參考下2024-10-10

