Python **kwargs,控制参数的正确性

问题描述

我正在寻找最佳实践来控制在使用 **kwargs 的 python 函数中插入参数。例如 **kwargs 的可能参数可能是 cw 和/或 latlon,仅此而已。我使用一个基本列表来检查 **kwargs 中存在的参数是否正确。

pr_label = ['PAN','SWIR','VNIR']
key_fun_get = ['cw','latlon']

def get(pr_type: str,**kwargs):
        if not isinstance(pr_type,str) or str(pr_type).upper() not in pr_label:
            raise TypeError('pr_type: {0},not valid.'.format(pr_type))
        if bool(kwargs):
            keys = list(kwargs.keys())
            for k in keys:
                if k.lower() not in key_fun_get:
                    raise TypeError('parameter: {0},not valid.'.format(k))
        # Todo: foo

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)