不能在齐柏林飞艇';s python解释器

不能在齐柏林飞艇';s python解释器,python,pickle,apache-zeppelin,Python,Pickle,Apache Zeppelin,我可以在python shell中正确运行以下代码,但无法在zeppelin python解释器中运行它。下面是齐柏林飞艇python解释器的实现 有人能帮我理解为什么齐柏林飞艇python解释器中的pickle不工作吗?谢谢 代码 输出 Fail to execute line 5: pickle.dumps(f) Traceback (most recent call last): File "/var/folders/dp/hmchg5dd3vbcvds26q91spdw0000gp/

我可以在python shell中正确运行以下代码,但无法在zeppelin python解释器中运行它。下面是齐柏林飞艇python解释器的实现

有人能帮我理解为什么齐柏林飞艇python解释器中的pickle不工作吗?谢谢

代码

输出

Fail to execute line 5: pickle.dumps(f)
Traceback (most recent call last):
  File "/var/folders/dp/hmchg5dd3vbcvds26q91spdw0000gp/T/zeppelin_pyspark-5559547270503920588.py", line 338, in <module>
    exec(code, _zcUserQueryNameSpace)
  File "<stdin>", line 5, in <module>
_pickle.PicklingError: Can't pickle <function f at 0x104317840>: attribute lookup f on __main__ failed
无法执行第5行:pickle.dumps(f)
回溯(最近一次呼叫最后一次):
文件“/var/folders/dp/hmchg5dd3vbcvds26q91spdw0000gp/T/zeppelin_pyspark-5559547270503920588.py”,第338行,在
exec(代码,ZCUUserQueryNameSpace)
文件“”,第5行,在
_pickle.PicklingError:无法pickle:在_umain上的属性查找f失败

BTW为什么需要pickle函数?这只是为了我的项目的功能。我想将python函数传递到jvm端并调用jvm函数,然后再次将此函数传递给python进程。这似乎是您应该在齐柏林飞艇的github页面上提交的问题。是的,我创建了它,但我怀疑这是由于pickle的内部机制。所以在这里问一个问题。顺便说一句,为什么需要pickle一个函数?这只是为了我的项目的特性。我想将python函数传递到jvm端并调用jvm函数,然后再次将此函数传递给python进程。这似乎是您应该在齐柏林飞艇的github页面上提交的问题。是的,我创建了它,但我怀疑这是由于pickle的内部机制。所以在这里问问题。
Fail to execute line 5: pickle.dumps(f)
Traceback (most recent call last):
  File "/var/folders/dp/hmchg5dd3vbcvds26q91spdw0000gp/T/zeppelin_pyspark-5559547270503920588.py", line 338, in <module>
    exec(code, _zcUserQueryNameSpace)
  File "<stdin>", line 5, in <module>
_pickle.PicklingError: Can't pickle <function f at 0x104317840>: attribute lookup f on __main__ failed