课程
/后端开发
/Python
/python进阶
题目:请利用filter()过滤出1~100中平方根是整数的数,即结果应该是:
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
我的方法是:
import math
def is_sqr(x):
return isinstance(math.sqrt(x),int)
print filter(is_sqr, range(1, 101))
为什么会运行不出想要的结果呢??
2017-03-24
源自:python进阶 2-6
正在回答
math.sqrt(x)返回的对象为float,可以试一下:
print isinstance(math.sqrt(4), float)
我明白了谢谢啦
慕粉3636939
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计