繁体   English   中英

在虚拟环境中安装 find spark

[英]Installing find spark in virtual environment

我正在使用pyenv创建一个虚拟环境。

我的 pyenv 包位于/.pyenv/versions/bio/lib/python3.7/site-packages的项目bio

我使用下面安装了findspark

pip install findspark  #it was installed successfully.

我可以在包目录中看到以下文件。

findspark-1.4.2.dist-info
findspark.py

但是,当我从 pyenv 目录启动 Jupyter notebook 时,我收到一条错误消息

import findspark
findspark.init()

ImportError:没有名为 findspark 的模块

尽管 pip 安装成功,您能否帮助我理解为什么我们会收到此错误?

我的which Jupyter返回以下路径(在终端和 jupyter 笔记本中)

`/home/abcd/.pyenv/shims/jupyter

即使您在终端 session 中激活了virtualenv ,Jupyter notebook 也不会从virtualenv中启动。

如果您import sys并打印出sys.executable ,您会发现 python 可执行文件的第一个值不是virtualenv的值。

您需要将virtualenvpython添加为 kernel。

$ virtualenv -p python3 pysparkvenv
$ source pysparkvenv/bin/activate
(pysparkvenv) $ pip install findspark jupiter  # etc.

(pysparkvenv) $ python -m ipykernel install --user

(pysparkvenv) $ which python
/home/disciple/Desktop/sample/pysparkvenv/bin/python

# make the necessary change to the python path
(pysparkvenv) $ sudo /home/disciple/Desktop/sample/pysparkvenv/bin/python -m ipykernel install --name pysparkvenv

这将创建一个新的 kernel,它将在下拉列表中可用。

您可以检查 kernel 是否是这样创建的

$ jupyter kernelspec list
Available kernels:
  python3        /home/disciple/.local/share/jupyter/kernels/python3
  pysparkvenv    /usr/local/share/jupyter/kernels/pysparkvenv

在此之后,您可以从任何地方启动jupyter notebook ,并且可以使用新的 kernel。 Select 这样,您将拥有安装在 virtualenv 中的所有模块。

pysparkvenv 内核

暂无
暂无

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

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