我在一個循環中多次執行一個動作,並想知道我有多遠。我正在嘗試製作一個進度報告功能,該功能應該如下所示: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 2013-03-17 20:53:18