1. 程式人生 > >logging模塊,collections模塊,random模塊

logging模塊,collections模塊,random模塊

sage 設置屏幕 span edt point asc error 雙向 onf

logging日誌模塊

低配版

import logging
logging.basicConfig(lexel=logging.INFO,
                            format=%(asctime)s%(filename)s[line:%(lineno)d]%(levelname)s%(message)s
                             filename=low版logging.log
    
                            )    
logging.debug(debug message)
logging.info(
info message) logging.warning(warning message) logging.error(error message) logging.critical(critical message) 日誌信息:不能寫入文件與顯示同事進行

高配版

import logging
logger =logging.getLogger() #創建日誌對象
fh = logging.Filenhandler(‘‘高配版logging.log‘,encoding=‘utf-8‘) #創建一個文件句柄
sh = logging.StreamHandler() # 創建一個屏幕句柄
formatter = logging.Formatter(‘%(asctime)s - %(name)s - %(levelname)s - %(message)s‘)
logger.setLevel(logging.DEBUG)

logger.addHandler(fh) # 日誌對象添加文件句柄
logger.addHandler(sh) #添加屏幕句柄
sh.setFormatter(formatter) # 設置屏幕格式
fh.setFormatter(formatter)  # 設置文件的格式
fh.setLevel(logging.DEBUG)


logging.debug(‘debug message‘)
logging.info(‘info message‘)
logging.warning(‘warning message‘)
logging.error(‘error message‘)
logging.critical(‘critical message‘)

  collections 模塊 提供特殊的數據類型模塊

from collections import namedtuple #對應值的元組
point = namedtuple(‘Point‘,[‘x‘,‘y‘])
p = point(10,30) # p = (x=10,y=30)

q = deque([‘a‘,‘b‘,‘c‘,‘d‘,‘e‘]) #雙向隊列 原則;先進先出

q.appendleft(111)左

from collections import OrderedDict 添加的字典的元素變成有序的
od = OrderedDict()

Counter類的目的是用來跟蹤值出現的次數

random

>>> random.random()      # 大於0且小於1之間的小數
0.7664338663654585
>>> random.uniform(1,3) #大於1小於3的小數
1.6270147180533838
#隨機整數 >>> random.randint(1,5) # 大於等於1且小於等於5之間的整數 >>> random.randrange(1,10,2) # 大於等於1且小於10之間的奇數 #隨機選擇一個返回 >>> random.choice([1,‘23‘,[4,5]]) # #1或者23或者[4,5]*** #隨機選擇多個返回,返回的個數為函數的第二個參數 >>> random.sample([1,‘23‘,[4,5]],2) # #列表元素任意2個組合 *** [[4, 5], ‘23‘] #打亂列表順序 >>> item=[1,3,5,7,9] >>> random.shuffle(item) # 打亂次序 >>> item [5, 1, 3, 7, 9] >>> random.shuffle(item) >>> item [5, 9, 7, 1, 3]

logging模塊,collections模塊,random模塊