一般来说,函数传参如下
单个参数
def func(x):
return x*10
data = map(func,[10,20]) #调用2次func
print(list(data))
多个参数
def func(x,y):
return x*y
data = map(func,[10,20], [22,33]) # 第一个数组是x,第二个数组是y
指定参数
那碰到多参数怎么办呢?
from functools import partial # 关键是导入下面这个自带的库
def func(x,y=1,z=10):
return x+y+z
data = map(partial(func,z=20),[10,20]) # 指定参数Z的特定值
print(list(data))
思考问题
如果我只想要x和y怎么办?
答:那就不需要用到partial了,直接传入x和y的数组进去就好了。