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

Python如何简化多变量相同条件校验并返回对应提示的重复代码?

Python重复None校验逻辑简化方案

方案1:直接遍历校验(最简洁,适合单场景使用)

把需要校验的变量和对应名称打包成元组列表,循环判断即可,逻辑和原代码完全一致:

for var, var_name in [(a, "a"), (b, "b"), (c, "c")]:
    if var is None:
        return f"Error - {var_name} has to be provided"

后续新增校验变量只需要在列表中添加对应元组即可,无需重复写if判断。

方案2:封装通用校验函数(适合多场景复用)

如果多个地方都需要做同类校验,可以封装成独立工具函数:

def validate_required_vars(pairs: list[tuple]):
    for var, name in pairs:
        if var is None:
            return f"Error - {name} has to be provided"
    return None

# 调用示例
check_result = validate_required_vars([(a, "a"), (b, "b"), (c, "c")])
if check_result:
    return check_result

方案3:自动获取参数名(适合函数入参校验)

如果是校验函数的入参,不想手动写变量名,可以借助inspect模块自动获取本地参数,适合参数较多的场景:

import inspect

def your_business_func(a, b, c):
    # 获取当前函数所有入参的键值对
    local_args = inspect.currentframe().f_locals
    # 指定需要校验的参数名即可
    for required_name in ["a", "b", "c"]:
        if local_args[required_name] is None:
            return f"Error - {required_name} has to be provided"
    # 后续业务逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 08:15:02