ModuleNotFoundError:没有名为“py4j”的模块
Posted
技术标签:
【中文标题】ModuleNotFoundError:没有名为“py4j”的模块【英文标题】:ModuleNotFoundError: No module named 'py4j' 【发布时间】:2019-10-14 00:12:28 【问题描述】:我安装了 Spark,但在将 pyspark 模块加载到 ipython 时遇到问题。我收到以下错误:
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-2-49d7c4e178f8> in <module>
----> 1 import pyspark
/opt/spark/python/pyspark/__init__.py in <module>
44
45 from pyspark.conf import SparkConf
---> 46 from pyspark.context import SparkContext
47 from pyspark.rdd import RDD
48 from pyspark.files import SparkFiles
/opt/spark/python/pyspark/context.py in <module>
27 from tempfile import NamedTemporaryFile
28
---> 29 from py4j.protocol import Py4JError
30
31 from pyspark import accumulators
ModuleNotFoundError: No module named 'py4j'
【问题讨论】:
错误提示模块py4j
丢失。你的环境中安装了吗?
【参考方案1】:
如果可以直接运行spark,可能需要修复环境变量PYTHONPATH
。检查目录$SPARK_HOME/python/lib/
中的文件名。如果 Spark 版本 2.4.3,文件为py4j-0.10.7-src.zip
:
export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/lib/py4j-0.10.7-src.zip:$PYTHONPATH
【讨论】:
$SPARK_HOME
是什么?和%SPARK_HOME%
一样吗?
如果您使用 brew 安装,则将 SPARK_HOME 设置为“/usr/local/Cellar/apache-spark/以上是关于ModuleNotFoundError:没有名为“py4j”的模块的主要内容,如果未能解决你的问题,请参考以下文章
ModuleNotFoundError:没有名为“dataviz”的模块
ModuleNotFoundError:没有名为“numpy”的模块
错误:ModuleNotFoundError:没有名为“图像”的模块
ModuleNotFoundError:没有名为“knox”的模块