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

请利用filter()过滤出1~100中平方根是整数的数,即结果应该是: [1, 4, 9, 16, 25, 36, 49, 64, 81, 100],用下面的方法为什么不能实现

import math


def is_sqr(x):

    return math.sqrt( x ).isdigit()==true


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




正在回答

2 回答

filter会判断调用is_sqr函数中返回是是否为真,为真则输出x值到新list中,否则跳过。尝试了一下isinstance方法判断字符串,就失去了filter的意义。能运行通过,但是不会生成新的list

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

isdigit() 方法检测字符串是否只由数字组成。

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

举报

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

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

进入课程

请利用filter()过滤出1~100中平方根是整数的数,即结果应该是: [1, 4, 9, 16, 25, 36, 49, 64, 81, 100],用下面的方法为什么不能实现

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号