秒啊,速来get这9个jupyter实用技巧
1 简介
jupyter notebook
与jupyter lab
作为广受欢迎的ide,尤其适合开展数据分析相关工作,而掌握它们相关的一些实用技巧,势必会大大提升日常工作效率。而今天我就来给大家介绍9个非常实用的jupyter
小技巧~
图1
2 9个jupyter实用技巧
2.1 在同一个output里显示多个输出结果
我们都知道,在jupyter
中同一个cell内,如果不使用print
等函数,那么就只有最后一个调用的变量结果会被打印显示出来:
图2
而只要配合ipython
执行下列代码之后,就可以实现多输出结果的打印:
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = 'all'
图3
可以看到,这时我们无论输出几个元素都会被打印出来非常方便~
2.2 在单元格中直接执行终端命令
在jupyter
中我们可以利用!
加上终端命令的形式,在单元格中直接执行命令,非常的方便(但要注意如果有需要输入y/n确认等情况,请把类似-y的参数带上否则无法继续):
图4
2.3 利用%who列出当前所有变量名
有些情况下,我们需要搞清楚当前kernel下有哪些已被创建的变量,这时魔法命令%who
就非常实用:
图5
也可以带上参数输出指定类型的变量名:
图6
2.4 使用多光标模式
很多情况下,我们针对同一个单元格内的代码,要修改的地方比较多的话,就可以配合jupyter
中的多光标模式,譬如按住ctrl
键点击不同的地方:
图7
或者按住alt
迅速矩形选择(会按照每行相同字符数进行选择):
图8
2.5 给自己的程序设置一个闹钟
当我们的一段程序需要运行较长时间时,我们往往不会干守着它运行完成,这时可以利用一些小技巧,在程序运行完成后给自己响起闹钟提示,譬如在windows
下可以参考下面的例子设置,大家可以亲自试一试非常的有意思~:
import winsound
import time
# 假装执行耗时任务
time.sleep(10)
duration = 3000 # 3000毫秒即3秒
freq = 440 # 设置响声频率
# 闹钟响起
winsound.Beep(freq, duration)
2.6 针对API进行模糊查询
有些时候我们在编程时可能会忘记某个函数或方法的全称,只依稀记得其中的某个单词或片段,这种情况下我们就可以参考下列方式使用*通配符进行模糊查询:
图9
2.7 设置显示行标号
jupyter
默认情况下是不显示代码行标的,这在我们执行出错之后很是不好寻找到底是哪一行出错,事实上我们可以通过设置来解决这个问题,譬如jupyter lab
中设置方式如下:
图10
2.8 阻止matplotlib多余文字内容输出
我们在用matplotlib
绘图时一定遇到过显示图像的同时跟着输出了一段文字,这是因为matplotlib
的很多API是有返回值的,因此我们只需要最后一行末尾加上;
阻止输出即可:
图11
2.9 配合watermark自动打印版本信息
在很多情况下,我们书写代码导入各种三方库之后,会习惯性的打印出各种版本信息,从而辅助之后的代码复用,这种情况下我们就可以配合watermark
来自动帮我们干这些事。
利用pip install watermark
安装完成后,就可以参照下面的方式给自己的notebook
添加各种记录信息~
图12
以上就是本文的全部内容,欢迎在评论区与我进行讨论~
秒啊,速来get这9个jupyter实用技巧的更多相关文章
- liunx速查
文件和目录 Linux 主要目录速查表 /:根目录,一般根目录下只存放目录,在 linux 下有且只有一个根目录,所有的东西都是从这里开始 当在终端里输入 /home,其实是在告诉电脑,先从 /(根目 ...
- 体验阿里云SSD云盘+ECS(I/O优化)的性能
阿里云推出SSD云盘+I/O优化的ECS已有一段时间,这个功能优化可以为ECS服务器与SSD云盘提供更好的网络能力.据阿里云官网介绍,SSD云盘最高提供20000次随机读写IOPS.256MB/S吞吐 ...
- NeHe OpenGL教程 第三十五课:播放AVI
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- MPlayer
名称 mplayer − 电影播放器 mencoder − 电影编解码器 概要 mplayer [选项] [文件|URL|播放列表|−] mplayer [选项] 文件1 [指定选项] [文件 ...
- 【录教程必备】推荐几款屏幕录制工具(可录制GIF)
我们经常会遇到一些场景,需要你向别人展示一些操作或是效果——例如告诉别人某某软件的配置步骤啊.刚设计出来网站的动画效果怎么样啊.某某电影里面的一个镜头多么经典啊.打得大快人心的NBA绝杀瞬间是怎么回事 ...
- 冲顶大会APP技术选型及架构设计
我在1月4日看到虎嗅推送"王思聪撒币"的消息,然后开始推敲背后技术.其中涉及直播流.实时弹幕.OAuth2.0开放授权.SMS api.Push网关.支付接口等业务,其技术实现并不 ...
- 教你快速录制gif动图
我们经常会遇到一些场景,需要你向别人展示一些操作或是效果——例如告诉别人某某软件的配置步骤啊.刚设计出来网站的动画效果怎么样啊.某某电影里面的一个镜头多么经典啊.打得大快人心的NBA绝杀瞬间是怎么回事 ...
- python 常忘代码查询 和autohotkey补括号脚本和一些笔记和面试常见问题
笔试一些注意点: --,23点43 今天做的京东笔试题目: 编程题目一定要先写变量取None的情况.今天就是因为没有写这个边界条件所以程序一直不对.以后要注意!!!!!!!!!!!!!!!!!!!!! ...
- 开发人员不可不看的 OBD通讯协议知识
OBD-II Network Standards» J1850 VPW– Adopted by GM; also known as Class 2.– Adopted by Chrysler (kno ...
随机推荐
- 大数据专栏 - 基础1 Hadoop安装配置
Hadoop安装配置 环境 1, JDK8 --> 位置: /opt/jdk8 2, Hadoop2.10: --> 位置: /opt/bigdata/hadoop210 3, CentO ...
- JAVA原生mvc实现用户信息的增删查改
笔者最近学完jsp和servlet,于是心血来潮的打算写个简单的用户案例 环境准备: 开发工具eclipse jdk-1.8.0_72 tomcat-9.0.5 前端部分: 1.自己手写了一套样式 2 ...
- python使用msgpack(umsgpack)
前言 如果有业务需要将一个数据塞进队列由另一端接收,我们就需要考虑到数据的大小,因为这跟队列的效率和稳定性正相关,如果你希望能对这部分数据进行一定的压缩,并且提高解压缩的效率时,希望你能想到 msgp ...
- LeetCode105 从前序和中序序列构造二叉树
题目描述: 根据一棵树的前序遍历与中序遍历构造二叉树. 注意:你可以假设树中没有重复的元素. 例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9 ...
- Flutter 基础组件:Widget简介
概念 在Flutter中几乎所有的对象都是一个Widget.与原生开发中"控件"不同的是,Flutter中的Widget的概念更广泛,它不仅可以表示UI元素,也可以表示一些功能性的 ...
- Nginx Consul nginx-upsync-module
nginx consul nginx-upsync-module 依赖包: yum -y install libpcre3 libpcre3-dev ruby zlib1g-dev patch 下载n ...
- ASP.NET Core错误处理中间件[1]: 呈现错误信息
NuGet包"Microsoft.AspNetCore.Diagnostics"中提供了几个与异常处理相关的中间件.当ASP.NET Core应用在处理请求过程中出现错误时,我们可 ...
- 【Linux】一个网卡部署多个内网ip
1.用root权限的用户登录CENTOS,进入network-scripts文件夹下(本步骤可以省略,与二步骤一起完成): shell命令:cd /ect/sysconfig/network-scri ...
- sentinel-实战
sentinel-实战笔记 什么是Sentinel Sentinel是阿里开源的项目,提供了流量控制.熔断降级.系统负载保护等多个维度来保障服务之间的稳定性. Sentinel主要特性: 获取Sent ...
- std::async的使用总结
C++98标准中并没有线程库的存在,直到C++11中才终于提供了多线程的标准库,提供了管理线程.保护共享数据.线程间同步操作.原子操作等类.多线程库对应的头文件是#include <thread ...