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

求大神指教,为什么结果是一样的

https://img1.sycdn.imooc.com//5c2dcdcf0001c43c08890173.jpghttps://img1.sycdn.imooc.com//5c2dcdd500011b6b09310207.jpg

请大神指教,为什么我输出a和a*a结果为一样的

正在回答

3 回答

判断条件里,不是0的都是1,也就是说除了0以外,其他数字都为真。

return a

return a*a

都完全没关系,因为a在这里不可能为0了,所以无论是什么数字,都是true。

也就是说,上面的两个参数和下面代码在功能上没有区别的:


if int(a) == a:

    return True


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

符合条件的元素组成的新list

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

因为filter函数是返回true或false,所以返回值大于0,不为空,都返回true。filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。

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

举报

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

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

进入课程

求大神指教,为什么结果是一样的

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