描述:通过将函数作为参数,使得功能类似的函数实现可以整合到同一个函数。
Before
def getAdd(lst):
result = 0
for item in lst:
result += item
return result def getMul(lst):
result = 1
for item in lst:
result *= item
return result print getAdd([1,2,3,4])
print getMul([1,2,3,4])
After
def getOperator(lst, init_val, func):
result = init_val
for item in lst:
result = func(result, item)
return result def add(x, y):
return x + y def mul(x, y):
return x * y print getOperator([1,2,3,4], 0, add)
print getOperator([1,2,3,4], 1, mul)
参考地址: