将默认值与kwargs合并,是否有更好的语法?
我有一个接受可变参数和合并用户提供的选项使用默认选项的方法,e.g将默认值与kwargs合并,是否有更好的语法?
def run(domain, **kwargs): options = {'opt1': 'abc', 'opt2': 'def'}
if 'opt1' in kwargs:
options['opt1'] = kwargs['opt1']
if 'opt2' in kwargs:
options['opt2'] = kwargs['opt2']
有没有比这更好的写作?
回答:
您可以使用字典解析:
def run(domain, **kwargs): options = {'opt1': 'abc', 'opt2': 'def'}
options = {a:kwargs.get(a, b) for a, b in options.items()}
以上是 将默认值与kwargs合并,是否有更好的语法? 的全部内容, 来源链接: utcz.com/qa/258948.html