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

关于invalid syntax的问题

import math

def is_sqr(x):

    return x if type(math.sqrt(x)) == type(1)

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


请问这里系统一直在return语句中报错SyntaxError: invalid syntax。但是我在IDEL上单独写type(math.sqrt(x)) 和type(1)都没有问题。(先给x赋值)。请问为什么?谢谢啦!

正在回答

1 回答

语法不应该这么写 吧  应该先进行IF判断再进行返回吧。 

if type(math.sqrt(x)) == type(1):

      return x再一个  你这个会得到一个空列表,因为 及时能被开方  得到的结果 也是float类型的

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

举报

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

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

进入课程

关于invalid syntax的问题

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

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

帮助反馈 APP下载

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

公众号

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