Python·Jupyter Notebook各种使用方法记录·持续更新

2023-05-16

Python·Jupyter Notebook各种使用方法记录·持续更新

标签(空格分隔): Python


  • PythonJupyter Notebook各种使用方法记录持续更新
  • 一 Jupyter NoteBook的安装
    • 1 新版本Anaconda自带Jupyter
    • 2 老版本Anacodna需自己安装Jupyter
  • 二 更改Jupyter notebook的工作空间
    • 1 方式一
    • 2 方式二绝招绝招
  • 三Jupyter的各种快捷键
  • 四Jupyter Notebook如何导入代码
    • 1 将本地的py文件load到jupyter的一个cell中
    • 2 从网络load代码到jupyter
  • 五Jupyter运行python文件
  • 六Jupyter一些其他琐碎用法
    • 1 jupyter的cell可以作为unix command使用
    • 2 Magic functions
    • 3 获取current working directory
    • 4 使用Matplotlib绘图
  • 七Jupyter中的Markdown
    • 1 在jupyter中设置link需要设置两部分
    • 2 为Jupyter Notebook添加目录功能


Jupyter notebook )前身为IPython Notebook,学习时,可以找两者的教程

  • Jupyter Project Documentation
  • Jupyter Notebook Documentation
  • Jupyter/IPython Notebook Quick Start Guide
  • Old IPython Notebook Homepage

一、 Jupyter NoteBook的安装

1.1 新版本Anaconda自带Jupyter

  • 目前,最新版本的Anaconda是自带Jupyter NoteBook的,不需要再单独安装
    image_1b4e5l3s6r5i18ok1rnd195i1u549.png-31.6kB

1.2 老版本Anacodna需自己安装Jupyter

Jupyter Notebook安装的官方网站

  • 安装Jupyter Notebook的先决条件:已经安装了python(python 2.7 或者是python3.3)

  • 具体的安装方法:

    • 官方建议利用Anaconda安装Jupyter
    • 安装完成Anaconda后,如果该Anaconda并不自带Jupyter Noterbook,那么,打开cmd,输入:conda install jupyter
  • 这样安装完的jupyter不具有New a terminal的功能
    经过各种查询才知道,原来是因为windows不具有terminal需要的TTY,所以,windows下的jupyter是不支持Terminal模式的,而且短期内也没有增加这种支持的计划

这里写图片描述

二、 更改Jupyter notebook的工作空间

2.1 方式一

“”不是每次都好用“”

在其配置文件ipython_notebook_config.py中,有如下一句

# The directory to use for notebooks and kernels.
# c.NotebookApp.notebook_dir = u''

该句就是用来指定其工作空间的,例如,默认的工作空间是:用户名文件夹,例如,现在想要将工作空间变为D:\Jupyter,那么,需要做如下更改(要记得删掉注释#)

# The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = u'D:\Jupyter'

注意:路径最后一级后面不要加符号“\”

如何找到该配置文件?

  • 在cmd中输入jupyter notebook --generate-config
  • 如果该配置文件已经存在,那么,会出现如下信息,从中可以见到配置文件存在的位置,注意,此时,输入N,不要overwrite
    image_1b4e641ot340t3g1asfdv81972m.png-16.9kB
  • 如果该配置文件不存在,那么,将会初始化产生一个配置文件

在cmd中输入:ipython profile create
可以找到关于jupyter的配置文件的位置

2.2 方式二绝招(绝招)

  • 进入工作目录文件夹
  • 键盘Shift+鼠标右键->在此处打开命令窗口-> 在弹出的命令窗口中输入:Jupyter Notebook
    这里写图片描述
    这里写图片描述

  • Jupyter被打开,定位到当前目录!
    这里写图片描述

三、Jupyter的各种快捷键

  • 执行当前cell,并自动跳到下一个cell:Shift Enter

  • 执行当前cell,执行后不自动调转到下一个cell:Ctrl-Enter

  • 是当前的cell进入编辑模式:Enter

  • 退出当前cell的编辑模式:Esc

  • 删除当前的cell:双D

  • 为当前的cell加入line number:单L

  • 将当前的cell转化为具有一级标题的maskdown:单1

  • 将当前的cell转化为具有二级标题的maskdown:单2

  • 将当前的cell转化为具有三级标题的maskdown:单3

  • 为一行或者多行添加/取消注释:Crtl /

  • 撤销对某个cell的删除:z

  • 浏览器的各个Tab之间切换:Crtl PgUpCrtl PgDn

  • 快速跳转到首个cell:Crtl Home

  • 快速跳转到最后一个cell:Crtl End

四、Jupyter Notebook如何导入代码

即导入代码到jupyter notebook的cell中

4.1 将本地的.py文件load到jupyter的一个cell中

问题背景:有一个test.py文件,需要将其载入到jupyter的一个cell中
test.py内容如下:

import caffe
SolverName = "/root/workspace"
sovler = caffe.AdamSolver(SolverName)

方法步骤
(1)在需要导入该段代码的cell中输入

%load test.py #test.py是当前路径下的一个python文件

这里写图片描述

(2)运行该cell
利用快捷键“Shift+Enter”,可以看到如下结果:
这里写图片描述

(3)可以看到,运行后,%load test.py被自动加入了注释符号#,test.py中的所有代码都被load到了当前的cell中

4.2 从网络load代码到jupyter

  • 在cell中输入%load http://.....,然后运行该cell,就会将load后面所对应地址的代码load到当前的cell中;

  • 下面给出一个例子,导入matplotlib中的一个小例子color example code

    • 首先,在想要导入该段代码的cell中输入

      %load test.py #test.py是当前路径下的一个python文件
    • 然后,Shift+Enter运行,可以看到如下结果:
      利用load导入python文件
      可以看到,运行后,%load test.py被自动加入了注释符号#,test.py中的所有代码都被load到了当前的cell中

五、Jupyter运行python文件

  • 利用jupyter的cell是可以运行python文件的,即在cell中运行如下代码:
%run file.py

file.py为要运行的python程序,结果会显示在该cell中
这里写图片描述
这里写图片描述

六、Jupyter一些其他琐碎用法

6.1 jupyter的cell可以作为unix command使用

具体方法为:在unitx command前面加入一个感叹号“!”

例子:
查看python版本:!python --version
运行python文件:!python myfile.py

6.2 Magic functions

还没有太明白,具体细节见The cell magics in IPython

6.3 获取current working directory

即当前运行的代码所在的路径
具体方法:current_path = %pwd
这样得到的current_path就是当前工作路径的字符转

6.4 使用Matplotlib绘图

在Jupyter Notebook中,如果使用Matplotlib绘图,有时是弹不出图像框的,此时,可以在开头加入

%matplotlib inline

七、Jupyter中的Markdown

参考1
Markdown 语法手册 (完整整理版)参考

7.1 在jupyter中设置link,需要设置两部分:

  • 要跳到的位置(the destination)
    需要在要跳转到的位置添加下面语句:

    <a id='the_destination'></a>

    这里的id取值任意赋值,下面在添加链接时要用

  • 需要添加链接的文字(an internal hyperlink to the destination),即点击该处可以跳转到the destination,在需要添加链接的文字后面加入:

    [需要添加连接的文字](#the_destination)
  • 下面是一个例子:
    源码:
    这里写图片描述
    效果图:
    这里写图片描述

7.2 为Jupyter Notebook添加目录功能

  • 原始的Jupyter是不支持markdown添加目录功能的
  • 实际上,可以利用Jupyter notebook extensions去使得这种功能实现
  • 具体方法:
    • 利用Anaconda安装Jupyter Notebook extensions
      conda install -c conda-forge jupyter_contrib_nbextensions
      image_1b4e9lcot1eo9ing1kk19l3t2713.png-71.7kB
    • 打开Jupyter Notebook,在它的(新增的)Nbextensions标签下勾选“Table of Contents(2)”
      image_1b4ea0o2i1jofnhlu1avj53jl9.png-105.3kB
    • 打开一个.jpynb文件,发现,目录功能可用了!
      image_1b4ea6tov2ld1pckpnlujf4g513.png-101kB

参考文献
[1] 为Jupyter Notebook添加目录


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python·Jupyter Notebook各种使用方法记录·持续更新 的相关文章

  • 《大数据时代》之后

    现在想想也不记得当时是怎么找到 大数据时代 这本书的 xff0c 好像是在查找数据库方面的书 xff0c 看到亚马逊推荐的书里有这本 xff0c 发现最近才出版的就买一本回来看看 然而这个过程中 xff0c 其实自己已经得到了大数据带来的影
  • 《代码大全》笔记

    最近将去年毕业时 xff0c 大神推荐的 代码大全 看完了 xff08 已经过去一年了 xff0c 要十分感谢推荐 xff0c 还有凤林兄的 深入理解计算机系统 xff09 零零碎碎的时间 xff0c 发现很多东西虽然在书中标记了 xff0
  • 《编程精粹》思之代码与产品

    之前眼中有代码无产品 xff0c 现在眼中有产品有代码 xff0c 什么时候能做到有产品无代码 xff1f 还需要努力 刚开始实习的时候 xff0c 总喜欢在程序中使用 p 43 1 61 而不是p 1 来给入参 xff0c 甚至于用来给定
  • 树莓派4B+Intel神经计算棒(Stick2)+YoloV5可行性考察报告

    1 神经棒只能作为协处理器 在执行脚本时 xff0c 通过在命令后面加上 d 设备名 就可以指定硬件设备来加速推理 例如 命令行指定神经棒运行 demo squeezenet download convert run span class
  • 在Vue中获取v-for的index值

    lt el submenu index 61 34 item id 43 39 39 34 v for 61 34 item index in menuList 34 key 61 34 item id 34 gt lt template
  • 死区时间的分析与设置

    出现死区的主要原因是因为MOS管的源极和栅极之间的结电容 现在在栅极加上一个门电路 当门电路输出的信号跳变的瞬间 xff0c 电流是非常大的 xff0c 会导致MOS管发热 xff0c 所以需要在门电路后面再串联一个电阻 xff0c 这个电
  • MOS管特性和导通过程

    三极管是流控流器件 xff0c 它不能驱动功率太大的器件 xff0c 因为此时C极电流大 xff0c 而CE压降为0 3V左右 xff0c 在三极管上面消耗的功率就很大 xff0c 还容易发热 所以压控压型的MOS管就诞生了 特性 一开始给
  • 2014欢聚时代(YY)软件研发笔试题

    本文转载自 xff1a http blog csdn net arcsinsin article details 12714027
  • FOC 单电阻采样 位置环控制伺服电机

    最近在做微型伺服电机的控制 xff0c 需要平滑地将电机定位到某个位置 伺服电机 编码器 PCB都是自制的 这里我把整个的流程和遇到的问题记录一下 目录 硬件设计 STM32CubeMX配置 程序设计 测试遇到的问题 演示视频 硬件设计 这
  • C语言正余弦函数定点查表算法原理及实现

    如果用数学库中的sin和cos函数计算 xff0c 可能涉及浮点 乘法 除法运算 xff0c 运行速率较低 这里介绍一种正余弦查表算法 参考代码 xff1a SMT32 FOC电机库的mc math c 首先我们知道正弦和余弦的函数值差了9
  • Git合并操作之merge、rebase、squash详解

    文章目录 1 git merge和git rebase1 1 git merge1 2 git rebase1 2 1 rebase交互模式1 2 2 git pull rebase 2 git squash 有时在一个分支上完成一个功能的
  • QT 右键菜单栏的实现

    有时我们希望在窗口中右键弹出菜单 xff0c 这里来介绍一下QT中怎么实现 xff0c 首先创建一个MainWindow项目 1 在mainwindow h文件中添加槽声明 private slots void on MainWindow
  • 基于Cortex-M的RTOS上下文切换详解及FreeRTOS实例

    文章目录 1 Cortex M MCU特性 1 1 操作模式 1 2 寄存器 1 2 1 核心寄存器 1 2 2 浮点寄存器 Floating Point registers 1 2 3 特殊寄存器 Special Registers 1
  • ARM异常处理(4):SVC和PendSV的作用详解

    SVC Supervisor Call 和PendSV Pendable Service Call 是针对软件和操作系统的两个异常 1 SVC SVC用于生成系统函数调用 xff0c 例如 xff0c 用户程序不允许直接访问硬件 xff0c
  • NXP EDMA学习(3):Scatter/Gather模式之串口循环缓冲区的实现

    在实际应用中 循环缓冲区的使用十分广泛 如果DMA每次接收一定字节然后再在中断中写入自己定义的循环缓冲区 这样又失去了使用DMA的意义 所以硬件上的循环缓冲区的实现非常重要 大部分芯片支持DMA循环模式 而NXP的eDMA则可以通过Scat
  • MCUXPresso IDE(Eclipse):每次build都重新编译,重新生成makefile

    最近在使用MCUXPresso IDE开发项目 xff0c 但是有几个问题 xff0c 这里来汇总一下 1 只要修改了某个文件 xff0c 就会导致整个工程都要重新编译一遍 项目 gt Properties gt C C 43 43 Bui
  • GCC编译优化选项及汇编优化实例

    文章目录 1 优化级别 O1 O2 O3 O0 Os Ofast Og Oz On n gt 61 4 2 汇编优化实例 最近在做LVGL的GUI xff0c 移植官方的SDK xff0c 然后CPU占用率竟然达到了99 xff0c 这就让
  • Linux 中执行Shell 脚本的方式(三种方法)

    Shell 脚本的执行方式通常有如下三种 xff1a xff08 1 xff09 bash script name 或者 sh script name xff1b xff08 2 xff09 path script name或者 scrip
  • docker容器保持运行不退出

    nsenter工具进入docker容器 概述 对于运行在后台的docker容器 xff0c 我们经常需要做的事情是进入到容器中 xff0c docker为我们提供了docker exec docker attach 命令 xff0c 并且还
  • 图像位置估计及3D投影

    构建查找并构建三维坐标系 关键函数 xff1a cv2 solvePnPRansac objpoints 对象点列表 corners 角点列表 cameraMatrix 相机矩阵 distCoeffs 畸变系数 使用RANSAC方案从3D

随机推荐