python-3.x - ModuleNotFoundError : No module named 'py4j'

标签 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'

最佳答案

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

关于python-3.x - ModuleNotFoundError : No module named 'py4j' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56342655/

相关文章:

python - 在更改计数图的条形宽度时,条形的相对位置会从 x 刻度偏移。我们如何解决这个问题?

python - 类内的 Numpy 数组赋值

hadoop - Spark 1.5.2和Hadoop 2.4(Hive 2)版本兼容性

sql - Hadoop/Hive-将单行拆分为多行并存储到新表中

function - 计算Python中的非空行和这些行的长度总和

apache-spark - 根据spark中的值删除重复的键

scala - 如何从 HDFS 检索 Avro 数据?

hadoop - 使用 hadoop 收集异构数据

bash - Oozie shell 脚本 Action

python - 如何将字节数组的内容复制到列表 (Python)?