假设有一个函数,这个函数需要接收4个参数,并返回这4个参数的和:
def sum_four(a, b, c, d):
return a + b + c + d
如果需要固定最后前三个参数,仅改变最后一个参数的值,这时候可能需要这么调用:
>>> a, b, c = 1, 2, 3
>>> sum_four(a=a, b=b, c=c, d=1)
7
>>> sum_four(a=a, b=b, c=c, d=2)
8
>>> sum_four(a=a, b=b, c=c, d=3)
9
>>> sum_four(a=a, b=b, c=c, d=4)
10
这样写实在是太丑了,如果用 Map 函数,是否能简化代码?
答案是肯定的,但是Map函数【一般】只能接受单一元素,如果你强行使用的话,它会报这样的错:
>>> list(map(sum_four, [(1, 2, 3, 4)]))
Traceback (most recent call last):
File "", line 1, in
TypeError: sum_four() missing 3 required positional arguments: 'b', 'c', and 'd'
怎么