我正在尝试将pyspark
代码从jupyter
笔记本迁移到python脚本。然而,当我尝试使用时
from pyspark.sql import SparkSession
我有一个错误No module named 'pyspark'
我试图在系统中找到所有
python3
和python2
,将它们作为shell运行,并尝试在每个shell中导入pyspark
。然而,我在每个外壳中都有相同的No module named 'pyspark'
当我用
python3
/python2
尝试import findspark
时,我得到了No module named 'findspark'
echo $PYTHONPATH
和echo $SPARK_HOME
返回空字符串我已经尝试找到所有的
spark-submit
,并使用它们而不是python3
运行我的脚本。然而,我在argparse
使用时遇到了一个错误File "/export/home/osvechkarenko/brdmp_10947/automation_001/py_dynamic_report.py", line 206 if args.print: ^ SyntaxError: invalid syntax
当我在python3(没有
pyspark
(中使用我的脚本时,它运行得很好。
首先,通过:确保jupyter和shell的python解释器相同
import sys
print(sys.executable)
如果是这样的话,您的jupyter内核会在启动时将pyspark添加到python路径中。正如@Sraw所指出的,您可以通过pyspark.__file__
在您的工作环境中定位pyspark。
以下是一个简短的bash脚本,介绍如何在Ubuntu 16.10下手动将pyspark添加到现有的jupyter内核:链接