ModuleNotFoundError:没有名为“ py4j”的模块

时间:2019-05-28 12:47:42

标签: python-3.x apache-spark hadoop pyspark py4j

我安装了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'

1 个答案:

答案 0 :(得分:0)

如果可以直接运行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