sorted, cmp=lambda s1, s2: cmp(s1.upper(), s2.upper())) 不懂。求大神 帮忙解释一下
2015-10-26
已采纳回答 / 星际怪物
@property def grade(self): return self.grade你这里定义了getgrade方法,没有定义setgrade方法(@score.setter)__init__中 self.grade = 'A' 这种用法会去调用setgrade方法,调用不到,所以can't set attribute这种只读效果不光对外也对内
2015-10-26
最赞回答 / 慕田峪6184375
python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:reduce(func,(1,2,3,4,5)) (func()必须是一个二元操作函数)func先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。
2015-10-26
最赞回答 / 不会换气的鱼
我自己的理解:1.以上面的log函数为例,log内部定义了fn函数,fn.__name__ 为 'fn'<...code...>当执行了f = log(f),因为log函数返回的也是一个函数(fn),所以f实际指向的函数(fn),f.__name__ 为 'fn...
2015-10-25
最赞回答 / 小明在努力
不知道同学现在懂了没 应该是这样的def log(f): def fn(x): print 'call ' + f.__name__ + '()...' return f(x) return fn //这个时候的log是一个返回fn函数的函数从上面的代码看 log就是指向fn函数的 要执行fn函数 就使用log()从f = log(f) 来看 log是一个函数名 所以log是指向fn函数的函数 只是上面的log没有参数给fn函数传参数 就是用l...
2015-10-24
#辗转相除法
def gcd(p,q):
if p<q:
p,q=q,p
while q!=0:
p,q=q,p%q
return p
def gcd(p,q):
if p<q:
p,q=q,p
while q!=0:
p,q=q,p%q
return p
2015-10-24
import math
def add(x,y,f):
return f(x)+f(y)
print add(4,8,math.sqrt)
def add(x,y,f):
return f(x)+f(y)
print add(4,8,math.sqrt)
2015-10-24
已采纳回答 / Coboler
見python進堦中描述:reduce()函数也是Python内置的一个高阶函数。reduce()函数接收的参数和 map()类似,一个函数 f,一个list。reduce()还可以接收第3个可选参数,作为计算的初始值。
2015-10-24