python內建模組之 logging

2022-05-01 10:12:09 字數 1736 閱讀 9789

logging 模組主要用於寫日誌

logging模組主要有如下幾個元件

日誌內容格式如下

format引數中可能用到的格式化串:

%(name)s logger的名字

%(levelno)s 數字形式的日誌級別

%(levelname)s 文字形式的日誌級別

%(pathname)s 呼叫日誌輸出函式的模組的完整路徑名,可能沒有

%(filename)s 呼叫日誌輸出函式的模組的檔名

%(module)s 呼叫日誌輸出函式的模組名

%(funcname)s 呼叫日誌輸出函式的函式名

%(lineno)d 呼叫日誌輸出函式的語句所在的**行

%(created)f 當前時間,用unix標準的表示時間的浮 點數表示

%(relativecreated)d 輸出日誌資訊時的,自logger建立以 來的毫秒數

%(asctime)s 字串形式的當前時間。預設格式是 「2003-07-08 16:49:45,896」。逗號後面的是毫秒

%(thread)d 執行緒id。可能沒有

%(threadname)s 執行緒名。可能沒有

%(process)d 程序id。可能沒有

%(message)s使用者輸出的訊息

import

logging

# 得到乙個logger物件

logger =logging.getlogger()

#建立乙個handler,用於寫入日誌檔案

fh = logging.filehandler('

test.log

',encoding='

utf-8')

#再建立乙個handler,用於輸出到控制台

ch =logging.streamhandler()

# 建立乙個formatter

formatter = logging.formatter('

%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# 將formatter跟haddler繫結

fh.setformatter(formatter)

ch.setformatter(formatter)

# 然後再將haddler跟logger繫結

logger.addhandler(fh)

#logger物件可以新增多個fh和ch物件

logger.addhandler(ch)

# 使用logger完成日誌

logger.debug(

'logger debug message')

logger.info(

'logger info message')

logger.warning(

'logger warning message')

logger.error(

'logger error message')

logger.critical(

'logger critical message

')

列印錯誤的堆疊資訊

import

traceback

try:

aexcept

exception as e:

msg =traceback.format_exc()

logger.error(msg)

python內建模組之random模組

import random print random.random 隨機 0 1 浮點數 print random.uniform 1,10 隨機指定範圍的浮點數 print random.randint 1,3 隨機整數1 3,包括3 print random.randrange 1,3 1 3隨...

python內建模組之XML模組

xml和json 一樣都是可以跨平台的,只是xml相比較,老一點 import xml.etree.elementtree as et a et.parse first xml.xml 載入乙個檔案 root a.getroot print root 乙個xml檔案 print root.tag x...

python內建模組之re模組

在python要想使用正則必須借助於模組,re就是其中之一 查詢字串中所有匹配到的字元,並返回乙個列表,沒有匹配資料則返回乙個空列表 import re re.findall 正規表示式 帶匹配的文字 根據正則匹配除所有符合條件的資料 res re.findall b eva jason jacks...