如果不是nu,则将参数传递给方法

2024-05-14 03:07:02 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在python中仅当参数不为null时才包含它?如果我将有效的颜色传递给doSomething方法,下面的代码可以正常工作。现在color有时是null(就像java中的null,我猜在python中是None或nil),这是printColor抛出异常的时候。我怎样才能避免这种情况?在

Invalid type for parameter packageNamespace, value: None

response = client.printColor(
            color = color # Only include this param is not None/Null
   )

response = client.printColor() # this works

Tags: 方法代码clientnone参数颜色response情况
1条回答
网友
1楼 · 发布于 2024-05-14 03:07:02

您可以从dict中筛选出Nones:

kwargs = {
    'color': color,
    ⋮
}

response = client.printColor(**{k: v for k, v in kwargs.items() if v is not None})

或者执行与函数相同的操作:

^{pr2}$

不过,这可能不是解决问题的最佳办法。如果您能展示真正的函数[的文档],那将是一个理想的选择。在

相关问题 更多 >