Skip to main content
 首页 » 编程设计

python之检测是否提供了可选参数(可能包括 None)

2025年05月04日13yyy_WW

<分区>

是否有比以下示例更好的方法来检测是否提供了可选参数?即使提供了 None,我们也希望返回它而不是引发异常。

预期结果:

>>> get_value('key-exists-not')  # default not provided 
KeyError 
>>> get_value('key-exists-not', None)  # should support arg 
None 
>>> get_value('key-exists-not', default=None)  # as well as kwarg 
None 
>>> get_value('key-exists-not', default='') 
'' 

这是最好/推荐的方法吗?

def get_value(key, default='somerubbishthatwillneverbeused'): 
    try: 
        return _data[key] 
    except KeyError: 
        if default != 'somerubbishthatwillneverbeused': 
            return default 
        raise