效率倍增!4 个鲜为人知却功能强大的魔法命令!
欢迎关注 ,专注Python、数据分析、数据挖掘、好玩工具!
魔术命令已成为每个使用数据科学 Notebook 人的必备品,通过扩展每个 Notebook 的功能,可以有效提高工作效率。
一些魔法命令,例如%time打印出 CPU 和挂钟时间,已经家喻户晓了。本文重点介绍一些功能强大却鲜为人知的魔法命令。欢迎收藏学习,喜欢点赞支持。
1、带有 %%prun 的配置文件代码
虽然著名的魔术命令 %time 和 %timeit 为 Python 代码提供了一些关于CPU和挂钟时间的信息,但它们无法分解代码的哪一部分执行了多长时间,这使得使用多个函数调用调试单元格变得更加乏味。
%prun(行模式)和%%prun(单元格模式)通过 Python 运行代码,并提供每个函数调用所用时间的详细信息。
%%prun不仅显示单元格运行的总时间,还详细说明了函数的调用频率以及这些调用的运行时间。在上面的示例中,调用了两个函数。但是,其中一个函数的运行时间要比另一个函数长得多。神奇的命令 %%prun 显示 firstFunction() 运行了0.722秒,而 secondFunction() 运行了0.007秒。
2、使用 %more 查看文件
下载文件后,使用 notebook 通常会强制用户在单独的文本编辑器中打开文件,以确定使用了哪个分隔符、日期格式或空值占位符。magic命令 %more 允许用户在编写代码时集中精力在笔记本环境中并检查文件。
虽然 %more 不假定文件为任何特定类型,但 %pycat 假定文件为 Python 文件并提供语法突出显示。还值得注意的是,它同时 %pycat 接受文件路径和 URL。
3、使用 %%debug 进行交互式调试
虽然 print 似乎仍然是 notebook 中最常用的调试方法之一,但 Python 已经附带了一个开箱即用的更强大的调试器。魔术命令 %%debug 使用户能够以交互方式使用 Python 的 pdb 调试器并更快地找到错误。
在上面的示例中,Python 的调试器允许 myFunc() 使用 s 命令逐步运行该函数。遇到 TypeError 后,该 a 命令会列出当前函数调用中使用的所有参数,并显示该 y 参数导致异常。
4、使用 %autocall 进行快速函数调用
当速度是唯一重要的事情时,启用自动调用 %autocall 可以帮助显着加快原型设计。当 autocall 设置为 ‘Smart’ 时,notebook 用户不再需要在括号中传递函数参数。使用 %%debug 上面示例中的函数,自动调用使用户能够使用 myFunc 1,2代替调用该函数myFunc(1,2)。
虽然自动调用可以实现更快的原型设计,但重要的是要记住它可能会降低所生成代码的可读性。
概括
在使用数据科学 notebook 时,魔术命令是提高生产力的绝佳工具,其功能远远超出人们的预期。
虽然本文中的四个魔法命令已经可以极大地提高生产力,但哪个魔法命令最有用通常取决于用户和手头的特定用例。幸运的是,甚至还有一个魔法命令可以帮助用户在不离开 notebook 环境的情况下试验魔法命令 %quickref。
此外,iPython 文档详细介绍了可用于魔术命令的所有选项以及如何通过构建自定义魔术命令来扩展生态系统。
技术交流
欢迎转载、收藏、有所收获点赞支持一下!
目前开通了技术交流群,群友超过2000人,添加方式如下:
如下方式均可,添加时最好方式为:来源+兴趣方向,方便找到志同道合的朋友
- 方式一、发送如下图片至微信,进行长按识别,回复加群;
- 方式二、直接添加小助手微信号:pythoner666,备注:来自CSDN
- 方式三、微信搜索公众号:Python学习与数据挖掘,后台回复:加群
效率倍增!4 个鲜为人知却功能强大的魔法命令!相关推荐
- 七个鲜为人知的搜索网站_4个鲜为人知但功能强大的熊猫行动
七个鲜为人知的搜索网站 Pandas being the most widely used data analysis and manipulation library provides numero ...
- android程序员用macbook,程序员必备,效率提升10倍,Mac上那些颜值高功能强大的软件,我只推荐这10个!...
工欲善其事,必先利其器,领导对我们说过最多的话就是要提高工作效率.效率建立在工具之上,要提升工作效率自然就少不了使用顺手的工具.做程序员这么多年,啥没留下,到是珍藏不少工作中使用高效的工具.作为一个M ...
- 让软件不在添加删除程序_功能强大却鲜为人知的四款软件,一但发现就无法自拔...
Uninstall Tool Uninstall Tool是一款专业且实用的卸载软件. 电脑上流氓软件很多,有时候你想卸载,却无法卸载,那么你可以试试它,它比Windows自带的"添加/删除 ...
- 安装程序检测到无法验证文件的发行者_功能强大却鲜为人知的四款软件,一但发现就无法自拔...
Uninstall Tool Uninstall Tool是一款专业且实用的卸载软件. 电脑上流氓软件很多,有时候你想卸载,却无法卸载,那么你可以试试它,它比Windows自带的"添加/删除 ...
- 5款功能强大的国产软件,大幅提升你的工作效率,可免费使用
提起国产软件,相信有不少人都会想起.乱收费.广告多.捆绑安装.不用好等. 其实,现在已经有很多国产软件一直都在坚持做好产品,帮助使用者优化工作流程.减少工作量,提高工作效率,同时也已被众多使用者认可. ...
- gz键盘增强小工具_这些不起眼的Mac小工具,能让你的Macbook效率倍增!
Mac系统上的神器有很多,今天macdown小编为大家整理了一些超好用的Mac小工具.所谓的小工具,它们没有太多的功能或者仅仅提供一个功能,但是能直击痛点,同时又不会打扰到你,你甚至感觉不到它的存在! ...
- 被误认为是外国人开发的4款软件,功能强大到离谱,且用且珍惜
国外的月亮不一定比国内圆,随着国内互联网飞速发展,国内研发出许多实用又良心的软件,由于偏见,功能强大的它们却被误认为是外国佬研发的. 1.Foxit PDF用系统自带的Adobe实在难用,Foxit这 ...
- Windows远程桌面管理--功能强大的远程批量管理工具
曾经,我想着要是有一款绿色小巧,功能实用的远程桌面管理工具,其界面简洁,操作便捷,能够同时远程操作多台服务器,并且多台服务器间可以自由切换,适用于网站管理人员使用的工具该有多好,苍天不负有心人,终于出 ...
- 高效、易用、功能强大的 api 管理平台(内附彩蛋)
前言导读 实际环境的需求可以说是:只有你没想到,没有实现不了的,征对于目前实际开发.测试.生产等环境中,需要用到各类的接口可达几十.甚至上百个,因此,必须需要一个统一管理的工具平台来统一管理这类接口, ...
最新文章
- POJ 1678 I Love this Game!
- NGUI从入门到实战1.2NGUI的主要特性
- Spring学习8-Spring事务管理(AOP/声明式式事务管理)
- C++ 继承Employee类
- spring bean作用域_Srping中Bean的三种装配方式:大魏Java记10
- ARINC818(FC-AV)协议详解
- 《高性能PHP》学习笔记
- 只需要2个工具,百度云盘大文件就能用迅雷和IDM下载
- ASP.NET Core MVC with EF Core-迁移
- 2021级C语言大作业 - 涂鸦跳跃
- python3 常见命令_vortex_新浪博客
- mac java jni_Mac OS上编译JNI的动态库
- C语言调用拼多多api,vb CommonDialog 属性
- 统计功效(power)
- 2017年最优秀的七大开源网络监控工具
- 低延时极简RTMP播放器
- 公私钥保存成PEM文件
- 分布式机器学习——入门篇
- 图像分类经典卷积神经网络—SENet论文翻译(纯中文版)—Squeeze-and-Excitation Networks(挤压和激励网络)
- 操作系统(2)复习 第八章 磁盘存储器的管理