课程
/后端开发
/Python
/python进阶
如果输出的的是f1( ),f2( ),f3( )就会出错,我理解的是f1( )指的是调用count( )这个函数???
另外,为什么我这样做不出现老师说的数值都是9这种状况?
2018-09-09
源自:python进阶 2-9
正在回答
在编辑器里执行失败 为啥?
第6行: fs.append(f())
f()已经把函数结果计算出来添加到fs列表里了,原程序fs.append(f)则是添加了一个函数到列表里
我认为你这样写就是返回了一个list嘛,然后类似于这样list=[1,2,3]f1,f2,f3=listprint f1,f2,f3
看到你的代码中 fs.append(f()) 存入的是函数调用的结果,
按题目的原意的是将函数变量存入列表中,即为 fs.append(f)
f1, f2,f3 = count()
相当于 [f1,f2,f3] = [f, f, f]
然而每个f() 返回的是 i*i,for循环中会导致i变量会递增,最终i 都会递增到3,
所以需要将变量绑定到一个过渡的值
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计