课程
/后端开发
/Python
/python进阶
import math def is_sqr(x): math.sqrt(x) %1 == 0 return x print filter(is_sqr,range(1,101))
2017-01-16
源自:python进阶 2-6
正在回答
你的代码是直接 return x,以为着前面的判断并没有效果,加上if就可以了,如下:
import math def is_sqr(x): if math.sqrt(x) % 1 == 0.0: return x print filter(is_sqr, range(1, 101))
慕粉1424266921 提问者
return x and math.sqrt(x)%1 ==0 #为什么一定要放在一行呢 前面加if =也不行
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计