def calc_prod(lst):
def product():
a = 1
for x in lst:
a = a * x
return a
return product
f = calc_prod([1, 2, 3, 4])
print f()
def product():
a = 1
for x in lst:
a = a * x
return a
return product
f = calc_prod([1, 2, 3, 4])
print f()
2016-07-10
def calc_prod(lst):
def ji(lst):
b=1
for a in lst:
b=b*a
return b
def lazy_sum():
return ji(lst)
return lazy_sum
f = calc_prod([1, 2, 3, 4])
print f()
def ji(lst):
b=1
for a in lst:
b=b*a
return b
def lazy_sum():
return ji(lst)
return lazy_sum
f = calc_prod([1, 2, 3, 4])
print f()
2016-07-10
最赞回答 / 熊xd
一个占位符,可以了理解为什么都不做。一般用于空的语句块,因为语句块不能为空,但你确实是在里面不写东西,python会出错,加个pass就没问题了。有很多例子:<...code...>这里创建了一个名为EnterError的Exception(所有错误的基类)的子类,但本身没用,那为什么还要创建呢?原因:<...code...>如果不是数,就会引发一个错误(raise就是引发错误),类型为我们自创的EnterError,说白了就是我们创建了一个名字响当当的错误。
2016-07-08
最新回答 / CuiYS
在答案的体系下是不行的,因为它后面的代码要求它必须返回一个函数(f = calc_prod([1, 2, 3, 4]) print f() 。) 而第三个定义的函数只是用于计算乘积,为第二个函数所利用,而第一个函数返回第二个函数,所以可以把第二个函数看成一个传导介质。当然看起来很绕,这主要是编者用来给初学者联系而已,当然还有其他简洁的方法,比如匿名函数什么的
2016-07-07
def __len__(self):
return len(self.names)
如果没有这一段 就报错 因为len只能作用于【】 而Students('Bob', 'Alice', 'Tim')并不是
--------------个人理解 经不起推敲
return len(self.names)
如果没有这一段 就报错 因为len只能作用于【】 而Students('Bob', 'Alice', 'Tim')并不是
--------------个人理解 经不起推敲
2016-07-07
已采纳回答 / 程序猿和攻城狮
super(type, [object-or-type]) Return the superclass of type. If the second argument is omitted the super object returned is unbound. If the second argument is an object, isinstance(obj, type) must be true. If the second argument is a type, issubclass(...
2016-07-07