是否可以簡化kwargs
選項的布爾檢查?在kwargs和kwargs中簡化`if'foo'['foo']爲True:`
例如,在foo
我要查很多的選擇:
def foo(*args, **kwargs):
if 'foo' in kwargs and kwargs['foo'] is True:
do_something()
if 'bar' in kwargs and kwargs['bar'] is True:
do_something_else()
...
一個可能workaroud是通過增加更多的複雜性隱藏某些複雜...
def parse_kwargs(kwords, **kwargs):
keywords = {}
for kw in kwords:
keywords[kw] = True if kw in kwargs and kwargs['kw'] is True else False
return keywords
然後在我的主要功能:
def foo(*args, **kwargs):
kw = parse_kwargs(**kwargs)
if kw['foo']:
do_something()
if kw['bar']:
do_something_else()
...
我想知道如果我可以使用更簡單的m ethod少樣板...
'如果kwargs.get( '富'):' – khelwood
http://stackoverflow.com/questions/12399803/how-to-check-if-a-key-in-kwargs-exists –