Я выполняю действие много раз в цикле и хочу знать, как далеко я продвигаюсь вперед. Я пытаюсь сделать функцию отчета о ходе работы, которая должна действовать примерно так:Закрытие в Python - пример
def make_progress_report(n):
i = 0
def progress_report():
i = i + 1
if i % n == 0:
print i
return progress_report
pr = make_progress_report(2)
pr()
pr() # 2
pr()
pr() # 4
Этот код не работает. В частности, я получаю UnboundLocalError
за i
. Как мне изменить его так, чтобы он работал?
@delnan Правильно, я искал вокруг, но есть очень много вопросов о закрытии я не читал торговый центр. Должен ли я адаптировать код из связанного с ним вопроса и вставить его здесь? – jclancy