gpt4 book ai didi

python - 带有参数的 pyspark foreach

转载 作者:太空宇宙 更新时间:2023-11-04 00:26:25 25 4
gpt4 key购买 nike

阅读 pyspark 文档我知道 foreach 是这样完成的:

def f(x): print(x)
sc.parallelize([1, 2, 3, 4, 5]).foreach(f)

但是,如果我使用带有多个参数的函数怎么办?

一个例子:

def f(x,arg1,arg2,arg3): 
print(x*arg1+arg2+arg3)

关键是要使用类似于此语法的内容:

sc.parallelize([1, 2, 3, 4, 5]).foreach(f(arg1=11,arg2=21,arg3=31))

最佳答案

你可以创建一个partial函数:

<b>from functools import partial</b>

sc.parallelize([1, 2, 3, 4, 5]).foreach(
<b>partial(</b>f, arg1=11, arg2=21, arg3=31<b>)</b>
)

partial 将函数和一系列未命名 (*args) 和命名 (**kwargs) 参数作为输入,并生成一个 函数,如果您调用该函数,它将调用原始函数 f,其中已填入未命名和命名参数。

关于python - 带有参数的 pyspark foreach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47304818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com