最赞回答 / 慕设计1811231
有些语法瑕疵:1/定义函数中的参数是一个变量,只能字母/数字/下划线...所以,def lazy_prod(L[])中的[]是非法字符...2/for x,y in L:进行迭代,只能一个参数3/return语句中不能进行赋值...即return L.append()=x*y. 你应该是想写成L.append(x*y)...还有其他问题...
2017-07-20
最新回答 / 小达达
你这代码不仅仅是python3报错,python2也报错。def get_grade(self,score):这里有1个score参数,但是你调用的时候却没有传入,肯定报错了实际上这里根本就不需要score参数,一个self就可以了
2017-07-19
最赞回答 / 开车不走路
使用偏函数是有条件的,例如int2()函数之所以能用偏函数,那是因为int函数本身能够接受一个base参数,但base默认值是10,所以偏函数的作用是改变这个默认值,当然也可以用高阶函数自己定义一个int2(),高阶函数跟普通函数本质上是没什么区别的,都是为了实现一个功能。
2017-07-17
最新回答 / 慕慕8143579
def performance(unit): def deco(g): #这里应该传入下面返回的函数g() def f(): print '[%s]' % unit return g() #这要返回一个新函数,由于你前面已经定义了f(),所以返回的新函数的变量名要换过 return f return deco@performance('ms')def factorial(): print ('hello'...
2017-07-17
最新回答 / qq_清心_3
python3 的 operator 可以 但返回 正相反In [46]: class Student(object): ...: ...: def __init__(self, name, score): ...: self.name = name ...: self.score = score ...: ...: def __str__(self): ...: return '(%s: %s)...
2017-07-15