zoukankan      html  css  js  c++  java
  • jupyter调教

    python2,python3两个kernel共存

    引入:事情的起因是公司需要用pyspark,而将pyspark封装到jupyter中。而公司spark集群上都是py2的解释器。因此jupyter上运行时需要使用py2的kernel

    环境:使用conda3自带的jupyter,已装py3解释器,非虚拟环境

    前提:使用py2的kernel需安装py2的ipython和kernel。

    尝试1:

    而目前使用的jupyter版本过高,和py2的ipython和kernel不匹配,但安装低版本也不匹配,相关py库仍然是Py3的。

    参考:https://stackoverflow.com/questions/40419609/how-to-make-ipython-use-python-2-instead-of-python-3 

    尝试2:

    由于每个kernel有相应配置文件,复制一份配置文件,并根据运行时报错一步步解决,包括将系统已有的py2赋值到有效的py3相应目录下也不行。

    最后解决办法:

    1、安装py2的虚拟环境

    如安装成功,使用

    # conda env list

    能显示自己命名的虚拟环境名

    2、激活py2虚拟环境

    # source activate virtual_name

    virtual_name就是前一步List中你创建的虚拟环境名;如果成功,在bash左侧会显示虚拟环境名

    3、在激活的虚拟环境中安装ipython和kernal

    # pip install xxx

    具体命令忘了,可百度搜到。只是注意这里不需要再使用pip2或者使用xxx==5.0来指定版本,这样做反而不能生效

    4、在虚拟环境中运行jupyter

    否则Py也不生效哦

    5、退出虚拟环境

    source deactivate virtual_name

    jupyter删除自动退出

    引入:jupyter在一段时间不用它后就自动gg了(比如吃法的时间),这样很多内存中的东西就没法保存,很烦人。

    尝试:

    网上找到的解决办法一般是这样:

    在配置文件将这一行取消注释:

    # c.NotebookApp.shutdown_no_activity_timeout = 0

    参考:https://blog.csdn.net/Dolphinsz/article/details/83623514

    我取消注释+重新启动进程没用。

    解决办法:

    运行时执行:

    # nohup jupyter notebook &

    然后关掉terminal这个界面也Ok.

    但是要退出的话怎么办呢,除了kill -9强行杀进程,也可以在jupyter首页右上角选择"quit"

  • 相关阅读:
    mysql总结
    ContOS7 安装 java1.8
    查找
    排序
    线程通信(交替执行)
    死锁(实现)
    Rank Scores
    OpenMP
    聚类的数据量过大的问题
    编译GraphLab出错
  • 原文地址:https://www.cnblogs.com/IcarusYu/p/12114414.html
Copyright © 2011-2022 走看看