说我有:
class Example(object):
def __init__(self, table = None, rows = None, cats = None, **kwargs)
self.table = table
self.rows = rows
self.cats = cats
我的问题是,对于所有的kwargs,我如何让kwargs的默认值为None? kwargs是一个词典,对吧......?
答案 0 :(得分:3)
这没有任何意义。使用kwargs
的原因是因为您不确定要传递哪些关键字参数。那么,对于未知关键字参数,具有默认值意味着什么?
当您通过简单地使用字典kwargs
方法询问.get()
的值时,您可以使用默认值,如果这就是您所要求的:
value_that_might_be_missing = kwargs.get('myvalue', 'mydefault')
否则我真的无法想象你想要什么。
答案 1 :(得分:0)
是的是字典。因此,它支持get()
方法。就像使用[]
一样,但会返回None
(或自定义值),而不是提升KeyError
。