我这个 py 包 py4j 是不是不太对,__inti__.py 里面只有几行代码?

154 天前
 amiwrong123

运行了一个程序,人家报错了:

  File ~\anaconda3\Lib\site-packages\pyspark\sql\utils.py:214 in install_exception_handler
    original = py4j.protocol.get_return_value

AttributeError: module 'py4j' has no attribute 'protocol'

然后我就去看 py4j ,直接去路径 C:\Users\myname\anaconda3\Lib\site-packages\py4j 这个路径下面看的,发现__inti__.py 里面只有几行代码(为啥我感觉不对劲呢,因为我去看 pyspark 的__inti__.py 里面是有 其他东西,比如定义的函数什么的):

# Py4J Package
from __future__ import absolute_import
from . import version

__version__ = version.__version__

但实际上,这个文件夹里,是有 protocol 的。

我直接在自己代码运行

import py4j
original = py4j.protocol.get_return_value

一样也会报错。

个人对 py 不太熟,求各位大佬指点。

544 次点击
所在节点    问与答
1 条回复
my8100
154 天前
试试 from py4j.protocol import get_return_value

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/998180

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX