欢迎访问宙启技术站
智能推送

使用inputs()函数接收用户输入并进行异常处理的实例

发布时间:2023-12-24 17:57:20

inputs()函数是Python中用于接收用户输入的内置函数。它会接收用户输入,并将其作为字符串返回。在接收用户输入时,我们可能需要进行异常处理,以避免程序崩溃或出现其他问题。

下面是一个使用inputs()函数接收用户输入并进行异常处理的实例:

try:
    name = inputs("Please enter your name: ")
    age = int(inputs("Please enter your age: "))
    print("Name:", name)
    print("Age:", age)
except ValueError:
    print("Invalid input! Age should be a number.")

在上面的例子中,我们首先使用inputs()函数接收用户输入的姓名和年龄。注意,inputs()函数会将用户的输入作为字符串返回,因此我们需要使用int()函数将年龄转换为整数。

接下来,我们使用try-except语句来捕获可能的异常。在这个例子中,我们使用了ValueError来捕获年龄转换为整数时可能出现的错误。如果用户输入的年龄无法转换为整数,就会触发ValueError异常。

在except块中,我们打印出"Invalid input! Age should be a number."的错误消息,以提醒用户输入无效。这样就可以避免程序崩溃,并且可以向用户提供更友好的错误提示。

现在让我们看一个完整的例子,演示使用inputs()函数接收用户输入并进行异常处理:

while True:
    try:
        name = inputs("Please enter your name: ")
        if not name:
            raise ValueError("Name cannot be empty!")
        age = int(inputs("Please enter your age: "))
        break
    except ValueError as e:
        print("Invalid input:", str(e))

print("Name:", name)
print("Age:", age)

在这个例子中,我们使用了一个无限循环,直到用户输入有效数据为止。在每次循环中,我们使用inputs()函数接收用户的姓名和年龄。如果姓名为空,我们会主动触发一个值错误异常,以提醒用户姓名不能为空。

如果用户输入的年龄无法转换为整数,我们会捕获ValueError异常,并打印出错误消息。然后继续下一次循环,让用户重新输入。

当用户输入有效的姓名和年龄后,我们跳出循环,并打印出姓名和年龄的值。

总结:

在使用inputs()函数接收用户输入时,我们应该始终注意异常处理。可以使用try-except语句来捕获可能的异常,并向用户提供更友好的错误提示。这样可以避免程序崩溃,并且能够及时发现和解决用户输入无效的问题。