在 Python 中使用 try...else 塊

Najwa Riyaz 2023年1月30日 2021年7月13日
  1. 在 Python 中使用沒有 else 子句的 try...except
  2. 在 Python 中使用 try...except 塊和 else 子句
在 Python 中使用 try...else 塊

本文解釋瞭如何使用 elsetry...except 對。我們已經包含了一些你用作指南的方法,以將這對組合到一個程式中。

try
   except: <a code block>
   else: <a code block. Note: 'else' clause is optional>

except 子句用於指定 >=1 異常處理程式。如果在 try 塊中丟擲異常,則執行與此子句關聯的程式碼塊,從而處理錯誤。

else 子句是可選的。它位於所有 except 子句之後。只有在 try 塊中沒有丟擲異常時,才會執行與此子句關聯的程式碼塊。

讓我們嘗試使用和不使用 else 語句的示例。

在 Python 中使用沒有 else 子句的 try...except

這是一個示例程式碼,演示如何使用 try...except 而沒有 else 子句。

try:
  print("From the 'try' statement block - ",var1)
except:
  print("Except block - An exception occurred")

此處,在 try 塊中未定義 var1,會發生以下情況。

  • try 塊中發生異常。
  • 不列印 try 塊中的 print 語句。
  • 執行 except 程式碼塊。

輸出:

Except block - An exception occurred

在 Python 中使用 try...except 塊和 else 子句

此處,示例程式碼顯示瞭如何將 try...exceptelse 子句一起使用。

try:
  var=3
  print("From the 'try' statement block - ",var)
except NameError:
  print("Except block with 'NameError'-Variable `var` is not defined")
except:
  print("Except block -Some other exception")
else:
  print("From the 'else' clause block - ",var)

這裡,在 try 塊中定義了 var,因此會發生以下情況。

  • try 塊中沒有發生異常。
  • 列印出現在 try 塊中的 print 語句。
  • except 程式碼塊不執行。
  • else 程式碼塊被執行。
  • 列印出現在 else 塊中的 print 語句。

輸出:

From the 'try' statement block -  3
From the 'else' clause block -  3

相關文章 - Python Exception