课程
/后端开发
/Python
/python进阶
def is_sqr(x):
return int(math.sqrt(x))==math.sqrt(x)
老师这样是否有问题?
2015-03-21
源自:python进阶 2-6
正在回答
math.sqrt(x)是浮点数,浮点数比较很多情况是不精确的,而整数比较是绝对精确的:
r = int(math.sqrt(x))
return r*r == x
june_fu888 提问者
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计