以下のコードでgen_window
は、printステートメントが含まれていますが、コードを実行すると、printステートメントが実行されません。それはなぜですか、そしてそのようなラムダ関数をデバッグするにはどうすればよいですか?(デバッガーでさえ、これらの関数のブレークポイントを無視します。)
getpairs = rdd.flatMap(lambda xi: gen_window(xi, n))
def gen_window(xi, n):
x, i = xi
l = []
for offset in range(n):
print("-->", (i - offset, (i, x)))
l.append((i - offset, (i, x)))
return l
作品:
def gen_window(xi, n):
x, i = xi
l = []
for offset in range(n):
print("-->", (i - offset, (i, x)))
l.append((i - offset, (i, x)))
return l
xi = [3,5]
n = 3
gen_window(xi, n)
ラムダは、実際に使用した場合にのみ実行されます-出力が得られない場合は、おそらく使用していません。
出力:
--> (5, (5, 3))
--> (4, (5, 3))
--> (3, (5, 3))
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加