, cbo :
from functools import partial as _partial, update_wrapper
def partial(func, *args, **keywords):
return update_wrapper(_partial(func, *args, **keywords), func)
, , , :
def my_func(msg):
print msg
my_func.my_marker = 'FOO'
my_partial = partial(my_func, 'hello world')
print my_func.my_marker
print my_partial.my_marker
print my_partial.func
print my_partial.args
print my_partial.keywords
my_partial.my_marker = 'BAR'
print my_func.my_marker
print my_partial.my_marker
my_func.my_marker = 'BAZ'
print my_func.my_marker
print my_partial.my_marker
- :
import functools
setattr(functools, 'partial', partial)
, , , (1) , , (2) , (3) (4) , , . , .
Annan source
share