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