我最近遇到了在Python中用函數定義函數的想法。我有這樣的代碼,它提供了錯誤:Python中的函數內的函數
def f1(a):
def f2(x):
return a+x
return 2*a
錯誤:在調用f2(5)
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
f2(5)
NameError: name 'f2' is not defined
我有一些困難,瞭解全局變量在函數中使用的方法甚至在遞歸調用中。如果有人會指出我的錯誤,並且可能會幫助我,我會很感激。提前致謝 !!
兩個downvotes?對我來說這似乎是一個合法的問題。 –
@GraemePerrow:也許人們覺得這表明缺乏研究工作(我自己並沒有就此問題投票)。 –