1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| from functools import partial
def f(a, b=5): print('a =', a, 'b =', b)
f_new = partial(f, 2)
f_new() f_new(6) f_new(b=6)
# f_new(a = 3)
def eval_sum(*args): s = 0 for n in args: s += n return s
eval_sum_new = partial(eval_sum, 20, 30) print(eval_sum_new(1, 2, 3, 4, 5))
def f1(a, b=5, *args, **kwargs): print('a =', a, 'b =', b, 'args =', args, 'kwargs =', kwargs)
f1_new = partial(f1, 1, 3, 6, m=8) f1_new(2, 4, n=9)
def f2(a, b=5, *, c, **kwargs): print('a =', a, 'b =', b, 'c =', c, 'kwargs =', kwargs)
f2_new = partial(f2, 1, m=8) f2_new(3, c=9)
|