python列印日誌到控制台並將日誌寫入檔案

2021-10-03 19:39:14 字數 966 閱讀 2790

import sys

import logging

logger = logging.getlogger('log')

logger.setlevel(logging.debug)

# 呼叫模組時,如果錯誤引用,比如多次呼叫,每次會新增handler,造成重複日誌,這邊每次都移除掉所有的handler,後面在重新新增,可以解決這類問題

while logger.hashandlers():

for i in logger.handlers:

logger.removehandler(i)

# file log 寫入檔案配置

formatter = logging.formatter('%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s') # 日誌的格式

fh = logging.filehandler(r'test_logger.log', encoding='utf-8') # 日誌檔案路徑檔名稱,編碼格式

fh.setlevel(logging.debug) # 日誌列印級別

fh.setformatter(formatter)

logger.addhandler(fh)

# console log 控制台輸出控制

ch = logging.streamhandler(sys.stdout)

ch.setlevel(logging.debug)

ch.setformatter(formatter)

logger.addhandler(ch)

def work():

logger.info('中文不亂碼')

logger.error('列印錯誤日誌')

if __name__ == "__main__":

work()

OC中控制台日誌列印

物件 d,i 整型 i的老寫法 hd 短整型 ld lld 長整型 u 無符整型 f 浮點型和double型 0.2f 精度浮點數,只保留兩位小數 o 八進位制 zu size t p 指標位址 e float double 科學計算 g float double 科學技術法 x 為32位的無符號整...

python 輸出日誌到檔案和控制台

import logging 第一步,建立乙個logger logger logging.getlogger logger.setlevel logging.info log等級總開關 第二步,建立乙個handler,用於寫入日誌檔案 logfile log2.txt fh logging.file...

python 輸出日誌到檔案和控制台

import logging 第一步,建立乙個logger logger logging.getlogger logger.setlevel logging.info log等級總開關 第二步,建立乙個handler,用於寫入日誌檔案 logfile log2.txt fh logging.file...