课程
/后端开发
/Python
/python进阶
def is_sqr(x):
return x == (math.sqrt(x)*math.sqrt(x))
print filter(is_sqr, range(1,101))
2020-01-08
源自:python进阶 2-6
正在回答
import math
def is_sqr(x): return int(math.sqrt(x))*int(math.sqrt(x))==xprint filter(is_sqr,range(1, 101))
把math.sqrt(x)返回的浮点数用int()转换为整数即可
因为math.sqrt(x)返回的是float型,而不是int型
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计