Вы не передаете increment
обоим декораторам; вы передаете increment
декоратору pass_through2
, и это возвращает функцию с именем inner2
, которая передается другому декоратору pass_through1
. Этот декоратор возвращает функцию с именем inner1
, которая в конце концов связана с именем increment
.
Так что, когда вы вызываете increment
, он действительно вызывает inner1
, который затем вызывает inner2
, что вызывает исходная функция increment
- один раз - и каждый из inner1
и inner2
регистрирует один раз.