為什么最后一行改成f 就對了,f()就報錯,請大神指點,謝謝
def calc_prod(lst):
? ? # def b():
? ? ? ? def a(x,y):
? ? ? ? ? ? return x*y
? ? ? ? return reduce(a,lst,1)
? ? # return b
f = calc_prod([1, 2, 3, 4])
print f
def calc_prod(lst):
? ? # def b():
? ? ? ? def a(x,y):
? ? ? ? ? ? return x*y
? ? ? ? return reduce(a,lst,1)
? ? # return b
f = calc_prod([1, 2, 3, 4])
print f
2019-04-16
舉報
2019-07-27
兩種返回應該都可以不會報錯啊,print f()返回的是函數的結果,print? f? 顯示的是他返回的函數和他的地址
2019-04-27
f 是個fuction對象,是個函數。f()是f這個函數的返回結果,也就是f函數里return什么,f( )就返回什么。f就是f函數本身
2019-04-16
def是自定認函數,f沒有被定義過,只是被賦了值
2019-04-16
f()是計算的結果?不懂
2019-04-16
f = calc_prod([1, 2, 3, 4])? ?那么照你意思 f()應該等于?calc_prod([1, 2, 3, 4])()? 那么這個東西你能理解是什么嘛???