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