MSCBSC 移動(dòng)通信論壇
搜索
登錄注冊
網(wǎng)絡(luò)優(yōu)化工程師招聘專欄 4G/LTE通信工程師最新職位列表 通信實(shí)習(xí)生/應(yīng)屆生招聘職位

  • 閱讀:64907
  • 回復(fù):0
PYTHON學(xué)習(xí)筆記【異常簡介】
細(xì)阿哥
中級會(huì)員
鎵嬫満鍙風(fēng)爜宸查獙璇? style=


 發(fā)短消息    關(guān)注Ta 

積分 500
帖子 100
威望 9542 個(gè)
禮品券 15 個(gè)
專家指數(shù) 0
注冊 2009-2-25
專業(yè)方向  通信
回答問題數(shù) 0
回答被采納數(shù) 0
回答采納率 0%
 
發(fā)表于 2019-10-31 15:50:10  只看樓主 

1     異常簡介

捕獲異常try...except...

1

try:
   
print(a)
    i =
1/0    # 如果前面出現(xiàn)異常,拋出錯(cuò)誤,本行沒有執(zhí)行
except (NameError, ZeroDivisionError) as e:#捕獲多個(gè)異常
   
print("出現(xiàn)異常:%s"%e)

輸出:

出現(xiàn)異常:name 'a' is not defined

 

2

f=None
try
#從本行開始捕獲異常
   
f = open("text.txt")
   
try:
        content = f.read()
        content.index(
"hadoop")
   
except Exception as ex:  # 捕獲所有異常
       
print(ex)
except FileNotFoundError as ex:  # 捕獲文件不存在的異常
   
print(ex)
else:#沒有異常的情況會(huì)自動(dòng)執(zhí)行的代碼
   
print("沒有異常的情況會(huì)自動(dòng)執(zhí)行的代碼")
finally# 最終要執(zhí)行的代碼,不管前面是否出現(xiàn) 異常
   
print("關(guān)閉文件")
   
if f:
        f.close()

 

3,異常的傳遞

 

f=None
try
#從本行開始捕獲異常
   
f = open("text.txt")
   
try:
        content = f.read()
        content.index(
"hello")
        i =
1/0
   
except ValueError as ex:  # 捕獲ValueError異常,未捕獲除0異常,傳遞給外層捕獲
       
print(ex)
except (FileNotFoundError,ZeroDivisionError) as ex:  # 捕獲文件不存在和除0的異常,最外層沒有捕獲,則由python捕獲
   
print(ex)
else:
   
print("沒有異常的情況會(huì)自動(dòng)執(zhí)行的代碼")
finally# 最終要執(zhí)行的代碼,不管前面是否出現(xiàn)異常
   
print("關(guān)閉文件")
   
if f:
        f.close()

 

自定義異常

 

class PassWordException(Exception):  # 自定義異常的類
   
def __init__(self, password, min_length):
       
self.password = password
       
self.min_length = min_length

   
def __str__(self):
       
return "%s密碼錯(cuò)誤,密碼最小長度為%s"%(self.password,self.min_length)

def reg(username,password):
   
if len(password)<6:
       
raise PassWordException(password,6# 拋出自定義的異常
   
else:
       
print("用戶名:%s,密碼%s"%(username,password))

try:
    reg(
"ZhangSan","123")
except FileNotFoundError as e:  # 兩個(gè)except會(huì)按照順序先執(zhí)行第一個(gè),如果第一個(gè)滿足異常類型,不會(huì)執(zhí)行后面的except
   
print("第一個(gè)except,FileNotFoundError:%s" % e)
except PassWordException as e:
   
print("第二個(gè)except,PassWordException:%s" % e)
except Exception as e:
   
print("第三個(gè)except,Exception:%s" % e)

 


掃碼關(guān)注5G通信官方公眾號,免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國移動(dòng):6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國電信5G NTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國移動(dòng)算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《 R16 23501-g60 5G的系統(tǒng)架構(gòu)1
  • 對本帖內(nèi)容的看法? 我要點(diǎn)評

     
    [充值威望,立即自動(dòng)到帳] [VIP貴賓權(quán)限+威望套餐] 另有大量優(yōu)惠贈(zèng)送活動(dòng),請光臨充值中心
    充值擁有大量的威望和最高的下載權(quán)限,下載站內(nèi)資料無憂

    快速回復(fù)主題    
    標(biāo)題
    內(nèi)容
     上傳資料請點(diǎn)左側(cè)【添加附件】

    當(dāng)前時(shí)區(qū) GMT+8, 現(xiàn)在時(shí)間是 2025-01-22 16:09:19
    渝ICP備11001752號  Copyright @ 2006-2016 mscbsc.com  本站統(tǒng)一服務(wù)郵箱:mscbsc@163.com

    Processed in 0.243795 second(s), 13 queries , Gzip enabled
    TOP
    清除 Cookies - 聯(lián)系我們 - 移動(dòng)通信網(wǎng) - 移動(dòng)通信論壇 - 通信招聘網(wǎng) - Archiver