为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的代码写成这样就可以了,不需要另外定义一个g()函数

https://img1.sycdn.imooc.com//5b953e9f00014c0508020546.jpg

如果输出的的是f1( ),f2( ),f3( )就会出错,我理解的是f1( )指的是调用count( )这个函数???

另外,为什么我这样做不出现老师说的数值都是9这种状况?

正在回答

4 回答

在编辑器里执行失败 为啥?


0 回复 有任何疑惑可以回复我~

第6行: fs.append(f())

f()已经把函数结果计算出来添加到fs列表里了,原程序fs.append(f)则是添加了一个函数到列表里

0 回复 有任何疑惑可以回复我~

我认为你这样写就是返回了一个list嘛,然后类似于这样
list=[1,2,3]
f1,f2,f3=list
print f1,f2,f3

0 回复 有任何疑惑可以回复我~

看到你的代码中 fs.append(f()) 存入的是函数调用的结果,

按题目的原意的是将函数变量存入列表中,即为 fs.append(f) 

f1, f2,f3 = count()

相当于 [f1,f2,f3] = [f, f, f]

然而每个f() 返回的是 i*i,for循环中会导致i变量会递增,最终spacer.gifi 都会递增到3,

所以需要将变量绑定到一个过渡的值

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

为什么我的代码写成这样就可以了,不需要另外定义一个g()函数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信