在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
异常。这样,我们可以处理无效输入并采取适当的措施,例如显示一条错误消息或记录错误。