1.異常處理html
l = ['apple','admin','kobe'] for id,item in enumerate(l,1): print(id,item) try: choose_id = int(input('請輸入序號:')) print(l[choose_id-1]) except (ValueError,IndexError): print('請輸入正確有效的序號') except Exception as e: print(e) finally: print('當return遇到finally的時候,先執行finally,而後執行return') print('不管如何都執行finally')
raise ValueErrot 主動報異常
2.loggin模塊app
做用:作時間格式和級別控制
注意:logging模塊不能自動生成日誌
def func(): logging.basicConfig(level=logging.ERROR) #修改打印級別的語句,作到了級別控制 #默認狀況下不打印warning如下級別的信息 logging.debug('123') logging.info('456') logging.warning('789') logging.error('1qaz') logging.critical('23esf3') func() logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt='%a, %d %b %Y %H:%M:%S')#修改打印級別的語句,作到了級別控制,默認狀況下不打印warning如下級別的信息 logging.debug('debug message') # 調試 logging.info('info message') # 普通訊息 logging.warning('warning message') # 警告 logging.error('error message') # 錯誤信息 logging.critical('critical message')# 嚴重錯誤
import logging # 用logger # 首先 先建立logger對象 logger = logging.getLogger() logger.setLevel(logging.DEBUG) # 第二 建立一個文件操做符 fh = logging.FileHandler('log',encoding='utf-8') # 第三 建立一個屏幕操做符 sh = logging.StreamHandler() # 第四 建立一個格式 fmt = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') # logger 綁定 文件操做符 logger.addHandler(fh) # logger 綁定 屏幕操做符 logger.addHandler(sh) # 文件操做符 綁定格式 fh.setFormatter(fmt) # 屏幕操做符 綁定格式 sh.setFormatter(fmt) 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')
返回系列ide