课程
/后端开发
/Python
/python进阶
import math def is_sqr(x): return x and math.sqrt(x) % 1 == 0 print filter(is_sqr, range(1, 101)) 为啥这个是and不是if
2017-04-03
源自:python进阶 2-6
正在回答
import math def is_sqr(x): return math.sqrt(x) % 1 == 0 print filter(is_sqr, range(1, 101)) 不要and和and前面那个应该就可以 因为filter就是返回符合条件的元素,所以判断改元素符合条件,那个元素就被返回了,不用亲自去写
没有 return后面追加if的 智能是用逻辑表达式去判断
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计