Pythonの隠れ便利モジュール、functools
特にfunctools.partial関数めちゃくちゃ使います。
一部の引数を固定した関数を返す、といえばいいのか説明が難しいんですが。
sample.py
from functools import partial
def sayhello(message=u"hello", to=u"ryo"):
print(u"{1}さん、{0}".format(message, to))
def main():
sayhello()
konnnichiwa = partial(sayhello, u"こんにちわ")
konnnichiwa("nishizawa")
konnnichiwa("takahashi")
if __name__ == "__main__":
main()
を実行すると
> python sample.py
ryoさん、hello
nishizawaさん、こんにちわ
takahashiさん、こんにちわ
となります。
PySideのコールバック関数などをやっつけるときに活躍します