Python functools
functoolsをやります。wraps
functoolsのwrapsを使うと、関数前後に処理を行うことができます。引数を変更したり、戻り値を変更することもできます。
from functools import wraps
def decoratorTest(f):
@wraps(f)
def wrapTest(*args, **kwds):
print('事前処理')
ret = f(*args, **kwds)
print('事後処理 戻り値:' + ret)
return ret
return wrapTest
@decoratorTest
def execute():
print('Hello')
return 'world'
execute()
実行結果
partial
functoolsのpartialを使うと引数の一部を固定できます。
from functools import partial
def message(msg1, msg2):
print(msg1 + msg2)
notInput = partial(message, msg2="が入力されていません")
notInput("Text1")
実行結果
ページのトップへ戻る