0
が同じになり、私は単純に思っ入力の階乗を計算する2次再帰関数を考えてみましょう:再帰的ラムダ関数のリスト選択で再帰制限エラーが発生するのはなぜですか?
fact = lambda x: 1 if x == 0 else x * fact(x-1)
fact = lambda x: [x*fact(x-1),1][x==0]
最初に実行されますが、罰金2番目の数字はエラーRuntimeError: maximum recursion depth exceeded
です。これは、x==0
とx!=0
の入力の場合に当てはまります。
ラムダ関数が2番目のケースを処理できないのはなぜですか?
これは意味があります。ありがとう – dylnan