Python: передача значений по умолчанию аргументов функции в * args или ** kwargs

Рассмотрим пример:

def decorator(func):
    def wrapper(*args, **kwargs):
        print(args, kwargs)
        func(*args, **kwargs)
    return wrapper

@decorator
def foo(x, y, z=0):
    pass

foo(5, 5)

Выход:

(5, 5) {}

Почему бы и нет(5, 5) {'z': 0}? Как передать все значения по умолчанию функцииfoo в*args или же**kwargs использование только декоратора (для функций) или метакласса (для методов класса, например,__init__)?

Ответы на вопрос(1)

Ваш ответ на вопрос