在Python中,assert
語句用于檢查一個條件是否為真。如果條件為假,程序將引發AssertionError
異常。要處理無效輸入,可以使用try-except
語句捕獲AssertionError
異常并采取適當的措施。
以下是一個示例,展示了如何使用try-except
語句處理無效輸入:
def process_input(input_value):
try:
# 嘗試執行一些操作,例如將輸入值轉換為整數
result = int(input_value)
except ValueError:
# 如果輸入值無效,引發AssertionError異常
assert False, f"Invalid input: {input_value}"
else:
# 如果輸入值有效,繼續執行后續操作
print(f"Processed input: {result}")
# 有效輸入
process_input("123")
# 無效輸入
process_input("abc")
在這個示例中,process_input
函數嘗試將輸入值轉換為整數。如果輸入值無效(例如,它不是一個整數),int()
函數將引發ValueError
異常。我們使用except
子句捕獲這個異常,并使用assert False
引發一個帶有自定義錯誤消息的AssertionError
異常。這樣,我們可以處理無效輸入并采取適當的措施,例如顯示一條錯誤消息或記錄錯誤。