0
関数の実行に必要な要素のリストと1つの追加の引数に関数を適用するこの定義があります。任意の数の単一の引数を適用するように変更するにはどうすればよいですか?例:リストと複数の単一の引数に関数を適用する
現在の方法:そのため
def ProcessListArg(_func, _list, _arg):
return map(lambda x: ProcessListArg(_func, x, _arg) if type(x)==list else _func(x, _arg), _list)
私は2つの引数を取る関数を必要とする仕事に。例:
def SomeFunction(arg1, arg2):
return something
私はそうのようにそれを適用する:
私はそうのような複数の単一の引数を利用するためにProcessListArgを変更したい:
def SomeFunction2(arg1, arg2, arg3):
return something
その後、私はそれを適用しますように:
output = ProcessListArgs(SomeFunction2, inputArg1List, inputArg2, inputArg3)
私はこれを試しました:
def ProcessListArgs(_func, _list, *args):
return map(lambda *xs: ProcessListArgs(_func *xs) if all(type(x) is list for x in xs) else _func(*xs), *args)
これは、引数がiterableではないというエラーをスローします。
ありがとうございます!
もちろんです!私はそれらのラムダでいくつかを磨く必要があります。ありがとうございました! – konrad