日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python報(bào)的錯(cuò)誤怎么處理

在編寫Python代碼或開發(fā)實(shí)際應(yīng)用的項(xiàng)目時(shí),程序報(bào)出異?;蝈e(cuò)誤是在所難免的,那么我們應(yīng)該怎樣處理這些異常呢?下面來說一下方法。

我們提供的服務(wù)有:網(wǎng)站制作、網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、通州ssl等。為上千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的通州網(wǎng)站制作公司

1.使用try...except捕捉異常

try:
  s=1/0
except IndexError:
  print ('except')
except KeyError:
  print ('Keyerror')
except ZeroDivisionError:
  print ('ZeroDivisionError')

try:
  s=1/0
except:
  print ('出現(xiàn)異常')
或有多個(gè)異常名稱的格式
try:
  s = 1/0
except(IndexError,KeyError,ZeroDivisionError),e:
  print (e)

2.使用try ...except...else語句捕捉異常

當(dāng)try塊中的代碼沒有異常時(shí),則跳過except塊中的代碼,執(zhí)行else塊中的代碼

工作原理:

1).如果try代碼塊語句執(zhí)行發(fā)生異常,Python就跳回try,執(zhí)行第一個(gè)匹配該異常的except塊中的代碼

2).如果異常發(fā)生在try代碼塊內(nèi),沒有匹配的except子句,name異常就會向上傳遞到程序中之前進(jìn)入的try中,或者轉(zhuǎn)到這個(gè)進(jìn)程的頂層(這會使python終止當(dāng)前程序并打印默認(rèn)的錯(cuò)誤消息)

3).如果try塊中的代碼執(zhí)行沒有異常發(fā)生,則python將執(zhí)行else塊中的代碼

3.使用try...finally捕捉異常

當(dāng)try塊中包含了finally語句,則python一定會在執(zhí)行完try塊中的代碼之后在執(zhí)行finally塊中的代碼(無論try塊中的代碼是否發(fā)生異常都將執(zhí)行finally塊中的代碼)

工作原理:

1).如果執(zhí)行try塊中的代碼時(shí)沒有發(fā)生異常,則Python會跳轉(zhuǎn)至finally語句并執(zhí)行該代碼塊,然后繼續(xù)執(zhí)行程序中finally語句之后的代碼

2).如果執(zhí)行try塊中的代碼時(shí)發(fā)生異常,則Python依然會執(zhí)行finally語句中的代碼塊,但是接著會將異常向上傳遞到上層的try語句或頂層的默認(rèn)處理器,程序不會繼續(xù)執(zhí)行導(dǎo)致發(fā)生異常的語句之后的try塊中的代碼。也就是說,即使發(fā)生了異常,finally代碼塊還是會被執(zhí)行,和except不同的是,finally不會終止異常,而是在finally代碼塊執(zhí)行后,一直處于發(fā)生狀態(tài)

4.使用raise拋出異常(手工引發(fā)異常)

raise<異常對象>

‘異常對象’表示將引發(fā)異常的異常名稱,且異常名稱標(biāo)識了具體的異常類。raise語句還可指定對異常對象進(jìn)行初始化的參數(shù),為此需要在異常類的名稱后添加一個(gè)逗號以及指定參數(shù)(或者由參數(shù)構(gòu)成的一個(gè)元組 )。一旦執(zhí)行了raise語句,raise語句后的代碼將不能被執(zhí)行

raise<異常對象>,<異常信息標(biāo)識>

例子:

try:
  raise NameError
except NameError:
  print ('拋出一個(gè)異常')

5.自定義異常

格式class MyError(Exception):   

 def __init__(self,value):
      self.value=value
    def __str__(self):
      return repr(self.value)
   try:
      raise MyError(2*2)
   except MyError as e:
      print('My exceotion occurred,value:',e.value)

6.使用assert語句

用于檢測某個(gè)條件表達(dá)式是否為真。又稱斷言語句,即assert認(rèn)為檢測的表達(dá)式永遠(yuǎn)為真,斷言失敗就會引發(fā)AssertionError異常

語法格式:assert<條件判斷表達(dá)式>

username = 'admin'
password='123456'
assert username =='admin' and password == 'admin','密碼錯(cuò)誤!'

文章名稱:創(chuàng)新互聯(lián)Python教程:python報(bào)的錯(cuò)誤怎么處理
網(wǎng)頁網(wǎng)址:http://m.5511xx.com/article/djdidhd.html