#深蓝海盗旗
import math
def is_sqr(x):
return math.sqrt(x)%2 == 1 or math.sqrt(x)%2 == 0
print filter(is_sqr, range(1, 101))
import math
def is_sqr(x):
return math.sqrt(x)%2 == 1 or math.sqrt(x)%2 == 0
print filter(is_sqr, range(1, 101))
2016-07-24
已采纳回答 / CuiYS
这只是表象看起来像是同一个方法,其实是三个有相同名称‘whoAmI’的不同方法,分别属于Person类、Student类、Teacher类的(相当于爸爸跟两个儿子每人都有一瓶农夫山泉,虽然都叫农夫山泉,但实质上是三瓶不同的水)。只不过实例在调用方法时是逐层上升,就是:先看看自己(‘实例’)有没有这个方法,有则调用,若无则向上看看子类(Student或者Teacher)有没有这个方法,有则调用,若无继续向上看看父类(Person)有没有这个方法,有则调用,若无继续向上。。。就这样逐层向上寻找想要的方法,找到...
2016-07-23
已采纳回答 / uniooo
<...code...>用super来找父类的时候,会遵循一定的顺序,经典的是从左至右,深度搜索,所以在例子里永远都是找到了myclass里的init方法。建议用上面的 ClassName.__init__(self, args)。。下面的也可以:<...code...>
2016-07-23
最赞回答 / 慕姐7853753
就这样说,我叫你做什么事,如果你没有给一个返回结果,那我怎么知道你完成得怎么样了。返回函数就是这样,告诉你,我已经完成得怎么样,如何你再进行下一步
2016-07-23
def calc_prod(lst):
def a():
n=1
for x in lst:
n=n*x
return n
return a
f = calc_prod([1, 2, 3, 4])
print f()
自己写的居然也对了~~哈哈
def a():
n=1
for x in lst:
n=n*x
return n
return a
f = calc_prod([1, 2, 3, 4])
print f()
自己写的居然也对了~~哈哈
2016-07-22
class Student(Person):
__slots__ = ('score')
def __init__(self,name,gender,score):
super(Student,self).__init__(name,gender)
self.score = score
__slots__ = ('score')
def __init__(self,name,gender,score):
super(Student,self).__init__(name,gender)
self.score = score
2016-07-22
已采纳回答 / 彼岸石头记
(1)因爲s可以爲none,不是說返回S,而是返回T或F,布爾表達式的結果(2)filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新lis!
2016-07-22
已采纳回答 / 苦_勤_向上_
首先解释一下这个程序的执行顺序,纯属个人意淫,不同意者请喷。calc_prod([])执行的时候,编译器会检查calc_prod的定义,他看到在这个函数的定义中有return mul这样的返回函数句柄的语句,就会保存当前calc_prod这个函数的上下文,这个上下文,个人比较关心的有lst变量的值,还有mul的定义,至于为什么保存?原因是闭包,延迟执行的原因。也就是说mul这个内建函数并不在此时执行。当f = calc_prod([1, 2, 3, 4])执行到赋值左边的时候,f变量就会指向mul这个函数...
2016-07-22