91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中異常的示例分析

發布時間:2021-08-26 10:54:42 來源:億速云 閱讀:160 作者:小新 欄目:開發技術

這篇文章主要介紹了Python中異常的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

簡介

當你的程序不能正常運行的時候,Python會在控制臺打印一段提醒,告訴你一個錯誤,這個錯誤就是異常。

錯誤

Python中異常的示例分析

我在控制臺寫了一段無效的代碼,將print()的括號去掉,在執行這條語句的時候,系統提示語法錯誤,無效的語句(我百度翻譯的)。這就是錯誤處理器所作的工作。

再換一種方式寫錯誤:

Python中異常的示例分析

在程序獲取用戶輸入的時候,我們使用CTRL+d引發了一個EOFError錯誤,接下來我們嘗試去處理這樣的錯誤。

處理異常

使用try---except語句來處理異常。我們通常把容易產生異常的語句放置在try塊中,把做異常處理的語句放在except塊中。

import sys

try:
  a = input('Enter something:')
except(EOFError):
  print('\nWhy did you do an EOF on me ?')
  sys.exit()
except:
  print('\nSome error/exception occurred.')

print('Done')

運行結果

Python中異常的示例分析

我們把所有可能引發錯誤的語句放在try塊中,然后在except從句/塊中處理所有的錯誤和異常。except從句可以專門處理單一的錯誤或異常,或者一組包括在圓括號內的錯誤/異常。如果沒有給出錯誤或異常的名稱,它會處理所有的錯誤和異常。對于每個try從句,至少都有一個相關聯的except從句。

你還可以讓try..catch塊關聯上一個else從句。當沒有異常發生的時候,else從句將被執行。

import sys

try:
  a = input('Enter something:')
except(EOFError):
  print('\nWhy did you do an EOF on me ?')
  sys.exit()
except:
  print('\nSome error/exception occurred.')
else:
  print('no error')

print('Done')

運行結果

Python中異常的示例分析

raise引發異常

你可以使用raise語句拋出異常。你需要指明錯誤/異常的名稱和伴隨異常觸發的異常對象。這個異常應該是Error和Exception類的子類。這就用到了繼承的思想,使用__init__方法初始一些方法和參數。

class ShortInputException(Exception):
  def __init__(self,length,atleast):
    Exception.__init__(self)
    self.length = length
    self.atleast = atleast

try:
  s = input('Enter something-->')
  print(len(s))
  if len(s) < 3:
    raise ShortInputException(len(s),atleast = 3)
except(EOFError):
  print('\nWhy did you do an EOF on me ?')
except(ShortInputException) as x:
  print('ShortInputException: The in input was of length %d,\
      was expecting at least %d' % (x.length,x.atleast))
else:
  print('No exception was raised.')

運行結果

Python中異常的示例分析

try...finally

假如在你讀文件的時候發生了異常,但是無論如何文件都要關閉。這個時候該怎么做呢?

這里我們需要使用finally塊來完成。

在使用try捕獲異常的時候,我們可以同時使用except塊和finally塊。

import time

try:
  f = open('poem.txt')
  while True: # our usual file-reading idiom
    line = f.readline()
    if len(line) == 0:
      break
    time.sleep(2)
    print(line)
finally:
  f.close()
  print('Cleaning up...closed the file')

運行結果

Python中異常的示例分析

這里使用了time的sleep函數,里面的參數是它的運行間隔。

Python中異常的示例分析

這樣我們就有時間去使用CTRL+c使程序發生異常。這時候我們發現finally塊中的語句還是運行的,文件正常關閉了。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Python中異常的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鲁山县| 奉新县| 河北区| 循化| 枞阳县| 安庆市| 青田县| 丽水市| 芒康县| 望江县| 班玛县| 泰和县| 长阳| 嫩江县| 贡觉县| 绥中县| 湘潭市| 易门县| 江华| 林周县| 东丽区| 山东| 广宗县| 慈溪市| 莲花县| 厦门市| 渑池县| 东平县| 宿迁市| 临城县| 江川县| 鹤山市| 曲沃县| 大竹县| 林甸县| 若羌县| 渝中区| 平顶山市| 山东省| 从江县| 当涂县|