我是CS的初學者,我一直在努力通過自己的Python書。python調用函數內部的函數
我目前在遞歸,但我有點卡住了。
該練習要求我編寫一個名爲do_n的函數,該函數將一個函數對象和一個數字n作爲參數,並將該函數調用n次。
這是我的代碼
def countdown(n):
if n<= 0:
print 'Blastoff'
return
else:
print n
countdown(n-1)
def do_n(f(n), x):
if x<=0:
return
else:
f(n)
do_n(f, x-1)
do_n(countdown(3), 3)
當我這樣做,有因爲在高清do_n無效語法錯誤(F(N),X)。如果將其更改爲
3210由於未在else語句中定義n,因此存在錯誤。
我想弄清楚如何使這項工作..謝謝你們!
縮進問題。修理它。 – user2864740 2014-09-10 23:35:07
我認爲你在發佈代碼示例時使用了選項卡。當您開始使用python而不是製表符使用4個空格縮進時,生活變得更加容易(請參閱關於如何配置您的編輯器)。它是我們處理python縮進瘋狂的標準方式。 – tdelaney 2014-09-11 00:41:01