偏函数
重新对一些函数的参数做固定处理。偏函数可以接受三个参数:函数参数、可变参数、关键字参数
# 偏函数
def logPerson(name, sex = 'man'):
print name + ' ' + sex
logPerson('Pocket')
logPerson('Baby', 'woman')
logPersonWoman = functools.partial(logPerson, sex = 'woman') # 偏函数重新定义函数的默认值,并返回一个新的函数名称
logPersonWoman('YOU')
'''
运行结果
Pocket man
Baby woman
YOU woman
'''
def personInfo(name, sex = '男', **kw):
print name
print sex
print kw
personInfo('Pocket')
personInfoCity = functools.partial(personInfo, sex = '男',city = '瑞金', score = {'语文':95, 'English':80})
personInfoCity('Pocket')
'''
运行结果
Pocket
男
{}
Pocket
男
{'city': '\xe7\x91\x9e\xe9\x87\x91', 'score': {'\xe8\xaf\xad\xe6\x96\x87': 95, 'English': 80}}
'''