1

この質問は私のコードに関するものではありません。
遅延評価が必要な理由を主張したいだけです。function.func_name


curryコードでデコレータを使用しています
func_name を変更して、カリー化された引数を表示するようにしました
。デバッグが必要なときに、どの引数が既にカリー化されているかを簡単に見つけることができました

>> 私の修正版 <<
>> 元のバージョン <<

私の例curry

@curry
def f(a, b, c, flag_foo=True, flag_bar=False):
    pass

>>> f
<function f at 0x100545398>

>>> f(1, flag_bar=True)
<function f(1, flag_bar=True) at 0x1005451b8>

>>> f(1, flag_bar=True)(3, flag_foo=False)
<function f(1, 3, flag_foo=False, flag_bar=True) at 0x1004aee60>

func_nameデバッグしないとアクセスできないので
、 func_name の評価のオーバーヘッドを避けたい

ただし、functionサブクラス化できない最終クラスは
遅延評価を実行する方法はありますfunction.func_nameか?

どんな提案でも大歓迎です

4

1 に答える 1