You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在用户输入无效时终止程序?多输入场景需逐个判断吗

解决输入无效时终止程序的问题

嘿,这个问题很好解决!完全不用给每个输入都单独写if判断,咱们可以把输入验证的逻辑封装成一个可复用的函数,既简洁又好维护,所有变量都能共用同一套验证规则。

第一步:封装输入验证函数

先写一个通用的输入验证函数,负责处理输入读取、格式校验,一旦输入无效就直接终止程序。这里假设你的输入需要是整数(如果你的验证规则不同,比如需要是特定范围的数字,直接修改函数里的校验逻辑就行):

def get_valid_input(prompt):
    while True:
        user_input = input(prompt)
        try:
            # 尝试将输入转为整数,根据你的需求调整类型(比如float)
            num = int(user_input)
            return num
        except ValueError:
            print("输入无效,请输入合法的整数!程序即将终止。")
            exit()  # 若用sys.exit()需先导入sys模块:import sys

第二步:用函数批量处理输入

接下来,所有变量(包括level)都可以调用这个函数来获取输入,不用再逐个写if判断:

# 处理6个结构相同的变量
var1 = get_valid_input("请输入变量1的值:")
var2 = get_valid_input("请输入变量2的值:")
var3 = get_valid_input("请输入变量3的值:")
var4 = get_valid_input("请输入变量4的值:")
var5 = get_valid_input("请输入变量5的值:")
var6 = get_valid_input("请输入变量6的值:")

# 处理level变量(如果验证规则和其他变量一致,直接复用函数)
level = get_valid_input("请输入level的值:")

第三步:回显输入并计算奖金

输入读取完成后,先回显所有内容,再按照规则计算奖金:

# 回显所有输入内容
print("\n你输入的内容如下:")
print(f"变量1:{var1}, 变量2:{var2}, 变量3:{var3}, 变量4:{var4}, 变量5:{var5}, 变量6:{var6}, level:{level}")

# 计算总奖金
total_bonus = 0
# 把所有需要计算的变量放到列表里,循环处理更高效
all_calc_vars = [var1, var2, var3, var4, var5, var6, level]
for num in all_calc_vars:
    if num == 10:
        continue  # 数值为10时奖金为0,跳过
    elif num > 10 and num % 2 == 0:
        total_bonus += 1
    elif num < 10 and num % 2 != 0:
        total_bonus -= 1

print(f"\n计算得出的总奖金为:{total_bonus}")

补充说明

如果你的输入验证规则有特殊要求(比如必须是0-20之间的整数),只需要在验证函数里添加额外判断即可,比如:

def get_valid_input(prompt):
    while True:
        user_input = input(prompt)
        try:
            num = int(user_input)
            # 添加范围校验
            if 0 <= num <= 20:
                return num
            else:
                print("输入无效,请输入0-20之间的整数!程序即将终止。")
                exit()
        except ValueError:
            print("输入无效,请输入合法的整数!程序即将终止。")
            exit()

这样不管有多少个变量,都只需要维护这一个函数的验证逻辑,不用重复写if,代码更整洁也更易维护。

内容的提问来源于stack exchange,提问作者DDSasikala

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:50:09