繁体   English   中英

`import pyspark`可在Jupyter中使用,但不适用于python shell / script

[英]`import pyspark` works in Jupyter, but doesn't work with python shell/script

我正在尝试将pyspark代码从jupyter笔记本迁移到python脚本。 但是当我尝试使用

from pyspark.sql import SparkSession

我有一个错误No module named 'pyspark'

  • 我试图找到系统中的所有python3python2 ,将它们作为shell运行,并尝试在每个shell中导入pyspark 但是,我在每个shell中都有相同的No module named 'pyspark'

  • 当我尝试使用python3 / python2 import findspark ,我No module named 'findspark'

  • echo $PYTHONPATHecho $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内核: 链接

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM