如何使用 **kwargs 更改默认值?

问题描述

我有一个函数(我们称之为 foo):

def foo(**kwargs):
    if kwargs.get("key") is not None:
        key = kwargs["key"]
    else:
        key = "default"

这里我有 key认值,但如果 kwargskey 的值,我想改用它。

有没有办法将其简化为 1/2 行?

解决方法

使用默认值 dict.get

def foo(**kwargs):
    key = kwargs.get("key","default")
,

kwargs 本质上是 dict 类型。因此,为不存在的键默认值的标准方法(和最佳实践)是使用:

kwargs.get(key,default_val)