def make_adder(increment):

    def adder(number):
        return number + increment
adder.__name__ = 'adder(%s)' % increment
return adder
В python, когда вы передаете внутренне определенные функции в другие функции, как он сохраняет переменные?