溫馨提示×

python assert如何處理無效輸入

小樊
81
2024-11-15 02:26:37
欄目: 編程語言

在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ù)拇胧?,例如顯示一條錯誤消息或記錄錯誤。

0