课程
/后端开发
/Python
/python进阶
import math
def is_sqr(x):
return isinstance(math.sqrt(x),int)
print filter(is_sqr, range(1, 101))
2017-10-23
源自:python进阶 2-6
正在回答
math.sqrt()返回的是一个浮点数,是float类型而不是int类型,比如sqrt(9)=3.0而不是3,因此isinstance()返回的都是False,所有元素都被过滤掉
qq_阳_41 提问者
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计