如何检查可选功能参数是否设置

2023-12-13

Python 中是否有一种简单的方法来检查可选参数的值是否来自其默认值,或者是因为用户在函数调用时显式设置了它?


并不真地。标准方法是使用用户不希望传递的默认值,例如一个object实例:

DEFAULT = object()
def foo(param=DEFAULT):
    if param is DEFAULT:
        ...

通常你可以只使用None作为默认值,如果它作为用户想要传递的值没有意义。

另一种方法是使用kwargs:

def foo(**kwargs):
    if 'param' in kwargs:
        param = kwargs['param']
    else:
        ...

然而,这过于冗长,并使您的函数更难以使用,因为其文档不会自动包含param范围。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查可选功能参数是否设置 的相关文章

随机推荐