Skip to main content
 首页 » 编程设计

python之检查 Python 类中必需参数的最佳方法

2025年05月04日10jirigala

我有一个可以用不同的参数组合构建的类,但我有一个所需的参数列表。这是我目前的检查方式:

    # check for the required arguments 
    rqrd_args = ['a', 'b', 'c']  # required arguments 
    mssing_args = set(rqrd_args)-set(kwargs.keys()) 
    if mssing_args: 
        error_lines = ['The following required arguments are missing:'] 
        error_lines.extend(['\t%s'%x for x in mssing_args]) 
        sys.exit('\n'.join(error_lines)) 
 
    # pull from kwargs 
    self.a = kwargs['a'] 
    self.b = kwargs['b'] 
    self.c = kwargs['c'] 

我倾向于多次重复使用此代码。我的问题是,我能否以某种方式将“#pull from kwargs”部分替换为遍历所需参数列表的循环,从而使代码更通用?为什么我不想这样做?

请您参考如下方法:

如果需要,将它们设为常规参数:

def __init__(a, b, c, **kwargs): 
    self.a = a 
    self.b = b 
    self.c = c 
    # ... then the rest in kwargs