Декораторы и частичные функции - PullRequest
2 голосов
/ 29 марта 2019

Я пытаюсь выучить декораторы и частичные, и думаю, в этом есть какой-то смысл. Я понимаю декораторы как способ добавления дополнительной функциональности к объекту путем передачи аргументов из функции, которая вызывает декоратор, во вложенную функцию в декораторе. Мое понимание частичного состоит в том, что я могу использовать, когда хочу уменьшить количество параметров для функции. Все идет нормально. Но потом я увидел этот фрагмент кода, и я не понимаю, почему _inner принимает только start и end. Почему не pos? В моей голове имеет смысл, если это будет третий параметр. :

def annealer(f): 
    def _inner(start, end): 
        return partial(f, start, end)
    return _inner

@annealer
def sched_lin(start, end, pos):
    return start + pos*(end-start)

f = sched_lin(1,2)
f(1)
OUTPUT: 2
...