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

怎么我这结果只输出一个元素[1]?我的思路是双层循环

import math
def is_sqr(x): 
    for y in range(1,11):
        return x==y*y

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


正在回答

2 回答

注意你的for循环第一次就退出了,而且永远返回 x == 1*1


def is_sqr(x):

    for y in range(1,11):

        if x==y*y:

            return True

    return False


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

大周Big_Zhou 提问者

非常感谢!
2015-03-07 回复 有任何疑惑可以回复我~
x==y*y


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

举报

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

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

进入课程

怎么我这结果只输出一个元素[1]?我的思路是双层循环

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