为了账号安全,请及时绑定邮箱和手机立即绑定

这样为什么不对呢?

def is_sqr(x):

    return x == (math.sqrt(x)*math.sqrt(x))

print filter(is_sqr, range(1,101))


正在回答

2 回答

import math

def is_sqr(x):
    return int(math.sqrt(x))*int(math.sqrt(x))==x
print filter(is_sqr,range(1, 101))


把math.sqrt(x)返回的浮点数用int()转换为整数即可


1 回复 有任何疑惑可以回复我~

因为math.sqrt(x)返回的是float型,而不是int型

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

这样为什么不对呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信