這個簡單的循環工作得很好:Python:如何編寫一個函數,該函數使用它的一些參數循環遍歷自身?
>>> def loop (i):
i+=i
if 0<i<20:
print i
loop(i)
>>> loop (1)
2
4
8
16
但是這一次不工作,它意外退出循環:
>>> from functools import partial
>>> def loop (i):
i+=i
if 0<i<20:
print i
partial(loop,i)
>>> loop(1)
2
>>>
什麼問題?有沒有一種解決方案,讓它以某種方式工作?
這只是一個簡單的功能... 我真正的問題是:
問:如何編寫一個函數,它能夠遍歷自身,只有一些它的參數,每次?我應該看看其他地方(除部分)?
tl; dr爲什麼不遞歸適合你? http://stackoverflow.com/a/479352/860635 –