為什么最后調用的是f1()?很懵
def count():
? ? fs = []
? ? for i in range(1, 4):
? ? ? ? def? f(j):
? ? ? ? ? ? def g():
? ? ? ? ? ? ? ? return j*j
? ? ? ? ? ? return g
? ? ? ? fs.append(f(i))
? ? return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
返回的fs列表中的三個值是什么 不就是 1,4,9 嗎 為什么最后調用的是f1(),調用的是函數?? 很懵
2019-07-18
fs中應該是三個函數吧,函數需要你調用才會得出最后值,所以調用的是f1(),你可以先試試把fs打印看看里面是函數還是值