zoukankan      html  css  js  c++  java
  • Python的IDE之Jupyter的使用

    Python的IDE之Jupyter的使用

    一、Jupyter介绍

    Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown。用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。优点:好用,很好用。

    Jupyter Notebook 也是一个算法工程师友好的工具,但仍有许多拓展的空间,比如:当你的文件中包含大量的代码和 Markdown 混排时,你可能需要一个目录来帮助你更好的对文件结构进行可视化,nbextensions 可以帮我们实现。

    二、安装

    1.安装方法,windows下,cmd 中直接使用 pip 安装

    pip install jupyter
    

    注意:Jupyter安装需要Python 3.3或更高版本,或Python 2.7。

    # 升级pip3 install --upgrade pip
    

    安装过程比较漫长,大概需要5min左右。

    2.安装完成后运行

    jupyter notebook
    

    如果安装正常,可能不会出错,我这里安装时提醒我

    Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
    

    所以运行报错:

    ModuleNotFoundError: No module named 'markupsafe._compat'
    

    提示说markupsafe._compat这个模块找不到,于是我跑到目录Python36Libsite-packagesmarkupsafe下,果然,没有_compat这个文件,然后把markupsafe这个模块卸载了,重装,还是不行,谷歌一下(现在好像都流行这么说了,哈哈哈),找到_compat这个文件内容:

    # -*- coding: utf-8 -*-"""
        markupsafe._compat
        ~~~~~~~~~~~~~~~~~~
        Compatibility module for different Python versions.
        :copyright: (c) 2013 by Armin Ronacher.
        :license: BSD, see LICENSE for more details.
    """import sys
    PY2 = sys.version_info[0] == 2if not PY2:
        text_type = str
        string_types = (str,)
        unichr = chr
        int_types = (int,)
        iteritems = lambda x: iter(x.items())else:
        text_type = unicode
        string_types = (str, unicode)
        unichr = unichr
        int_types = (int, long)
        iteritems = lambda x: x.iteritems()
    

    在目录Python36Libsite-packagesmarkupsafe下创建一个新文件_compat.py,将上面内容写入,保存,然后再cmd下运行jupyther,顺畅:

    C:Users82055Desktop>jupyter notebook
    [I 17:34:01.725 NotebookApp] Writing notebook server cookie secret to C:Users82055AppDataRoamingjupyter
    untime
    otebook_cookie_secret
    [I 17:34:02.759 NotebookApp] Serving notebooks from local directory: C:Users82055Desktop
    [I 17:34:02.760 NotebookApp] 0 active kernels
    [I 17:34:02.761 NotebookApp] The Jupyter Notebook is running at:
    [I 17:34:02.761 NotebookApp] http://localhost:8888/?token=7d96ee52f2c5c5c451af05e15d6f6cb626b1a6783b590117
    [I 17:34:02.762 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
    [C 17:34:02.764 NotebookApp]
    

    默认会自动跳转到页面(网页)

    013-Python集成开发环境之Jupyter的使用-01.png?x-oss-process=style/watermark

    三、基本使用

    1.修改默认目录

    (1)查找jupyter配置文件路径

    C:Users82055Desktop> jupyter notebook --generate-config
    Writing default config to: C:Users82055.jupyterjupyter_notebook_config.py
    

    (2)找到配置文件,更改默认目录

    ## The directory to use for notebooks and kernels.
    c.NotebookApp.notebook_dir = 'H:PyCoding'
    

    再次启动jupyter,发现主页面文件为我们自己指定的文件夹内的文件了。(默认为电脑桌面文件)

    2.新建一个python文件

    我们点击页面上的new按钮,新建一个py3文件,如下动图演示:

    013-Python集成开发环境之Jupyter的使用-02.gif

    而且大家可以看到,我第一次输入2+3,按Shift+Enter键运行,得出结果5,然后还可以把上面的输入更改,改为2+5,再运行,也能得出结果,这也是Jupyter的一个特性:可以修改之前的单元格,对其重新计算,这样就可以更新整个文档了。

    3.一些基本操作(gif?x-oss-process=style/watermark动图演示)

    013-Python集成开发环境之Jupyter的使用-03.gif

    还有很多功能给大家自己开发吧,欢迎评论留言,说出你还知道的Jupyter的其他功能。

    四、Jupyter插件安装

    1. 不同平台安装
      1. python: pip install jupyter_contrib_nbextensions
      2. conda: conda install -c conda-forge jupyter_contrib_nbextensions
    2. 第一个步骤结束后,安装脚本文件
    jupyter contrib nbextension install --user
    

    4.1 配置

    打开 Jupyter Notebook,可以看到主界面餐单栏多出了 Nbextensions 选项,点击可以展开拓展程序选项:

    013-Python集成开发环境之Jupyter的使用-04.png?x-oss-process=style/watermark

    013-Python集成开发环境之Jupyter的使用-05.png?x-oss-process=style/watermark

    每个拓展程序均可以单击后查看介绍与使用方法,我们以拓展目录为例。勾选红框中的Table of Contets (2)项目。然后新建一个项目,点击菜单栏的最右边新增的目录符号,即可显示文件目录。更多的设置可以点击左侧目录的设置按钮。

    013-Python集成开发环境之Jupyter的使用-06.png?x-oss-process=style/watermark

    五、Jupyter魔术方法

    013-Python集成开发环境之Jupyter的使用-07.jpg?x-oss-process=style/watermark

    六、Jupyter快捷键

    • Shift-Enter : 运行本单元,选中下个单元
    • Ctrl-Enter : 运行本单元
    • D,D : 删除选中的单元
    • Ctrl-Shift-- : 分割单元
    • X : 剪切选中的单元
    • C : 复制选中的单元
    • Shift-V : 粘贴到上方单元
    • V : 粘贴到下方单元
    • Z : 恢复删除的最后一个单元
    • Ctrl-A : 全选
    • Ctrl-Z : 复原
    • Shirt:选中多个单元格
    • Shirt+M:合并选中的单元格
    • shift+tab :查看当前接口的属性

    013-Python集成开发环境之Jupyter的使用-08.jpg?x-oss-process=style/watermark

    七、Jupyter后home页面空白问题解决

    7.1 解决方案1

    更换默认的浏览器,选择谷歌浏览器,很多360打不开的页面,更换谷歌后都能有效解决,并且确保是最新版本的google浏览器。

    7.2 解决方案2

    1.产生jupyter_notebook_config.py文件,使用windows+r打开cmd命令输入命令:jupyter notebook --generate-config(注意notebook后面有空格)

    在cmd界面中会提示出,jupyter_notebook_config.py中文件的路径

    2.打开jupyter_notebook_config.py文件,在第(95-99行)找到 # c.NotebookApp.browser = ''

    ## Specify what command to use to invoke a web browser when opening the notebook.
    #  If not specified, the default browser will be determined by the `webbrowser`
    #  standard library module, which allows setting of the BROWSER environment
    #  variable to override it.
    #c.NotebookApp.browser = ''
    

    在该行代码下方增加

    import webbrowser
    webbrowser.register('chrome', None, webbrowser.GenericBrowser(
        u'C:Program Files (x86)GoogleChromeApplicationchrome.exe'))
    c.NotebookApp.browser = 'chrome'
    

    其中上面代码中C:Program Files (x86)GoogleChromeApplicationchrome.exe是google浏览器的路径地址。

    3.再次打开jupyter notebook,如果默认浏览器不是google浏览器,复制自己电脑中的cmd中的http://localhost:8888/?token=74493923aa071ac11d0a797133a6736296308800110bf662到谷歌浏览器中。

    7.3 解决方案3

    1. 能打开Home页面说明你的jupyter已经安装好了,可能是网页模式不兼容的问题
    2. 这时候,鼠标右键点击“切换到极速模式”
    3. 切换以后,可以正常显示页面
    在当下的阶段,必将由程序员来主导,甚至比以往更甚。
  • 相关阅读:
    第一次冲刺02
    第一次冲刺01
    Android源码分析(十四)PackageManagerService服务分析
    Android源码分析(十三)ActivityManagerService服务分析
    Android源码分析(十二)ServiceManager服务分析
    Serializable和Parcelable之序列化
    ViewPager 相关使用
    AIDL介绍以及简单使用
    Android 四大组件 (五) 第五大组件
    Android 源码分析(十一) 事件传递机制
  • 原文地址:https://www.cnblogs.com/randysun/p/11710652.html
Copyright © 2011-2022 走看看