问答详情
源自:8-5 Python的filter()函数

请问这里哪出错了呢?还是说sqrt(x)返回的是浮点数是吗?

https://img1.sycdn.imooc.com/65f3b86e0001f50012720734.jpg

sqrt(x)返回的是浮点数

提问者:慕雪4244644 2024-03-15 10:56

个回答

  • 宝慕林7032976
    2024-08-20 21:10:01

    https://img1.sycdn.imooc.com/66c494360001ef0e12170818.jpg
    sqrt 返回的是float类型,用type int去判断,可以无法返回值

    import math


    def f(n):

        r = int(math.sqrt(n))

        return r * r == n

    print([item for item in filter(f, range(1, 101))])