MST

星途 面试题库

面试题:Python if语句嵌套及用户输入异常处理

编写一个Python程序,通过input获取用户输入的字符串。首先判断输入是否为空,如果为空则提示'输入不能为空'并要求重新输入。若输入不为空,尝试将其转换为浮点数。如果转换成功,根据这个浮点数的值使用多层if - elif - else判断其处于以下哪个区间:小于0、[0, 10)、[10, 20)、[20, 30)、大于等于30,并输出对应的区间信息。如果转换失败,提示'输入不是有效的数字,请重新输入'。请使用合理的异常处理机制和循环结构实现该功能。
23.6万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
while True:
    user_input = input("请输入字符串:")
    if not user_input:
        print('输入不能为空')
        continue
    try:
        num = float(user_input)
        if num < 0:
            print("该数字小于0")
        elif 0 <= num < 10:
            print("该数字在[0, 10)区间")
        elif 10 <= num < 20:
            print("该数字在[10, 20)区间")
        elif 20 <= num < 30:
            print("该数字在[20, 30)区间")
        else:
            print("该数字大于等于30")
        break
    except ValueError:
        print('输入不是有效的数字,请重新输入')