kwonlyarg未正确传递给装饰者

时间:2017-10-25 12:54:31

标签: python-3.x arguments kwargs

我有以下装饰者:

from decorator import decorator

@decorator
def prepare_opts(decorated_func, *args, **kwargs):

args = list(args)
....

如果我包装以下功能:

EMPTY_DICT = {}

@prepare_opts
def get_child_items_from_id(item_id, *single_opts,  additional_cond_q_def_dict=EMPTY_DICT,
                            **named_opts):
....

并称之为:

child_items = ticket_functions.get_child_items_from_id(952549, additional_cond_q_def_dict={
                                                               'field': 'Summary',
                                                               'q_type': 'contains',
                                                               'value': 'ABC'
                                                           })

装饰器获取(952549, {'field': 'Summary', 'q_type':'contains', 'value':'ABC'})

的元组*args

实际上我希望additional_cond_q_def_dict作为**kwargs的条目传递,而不是作为*args中的条目传递给装饰器。我在这里想念的是什么?

0 个答案:

没有答案