首页 > 优化 > 关键词  > 原创外文最新资讯  > 正文

Python十大魔术命令可助你提高生产力

2020-04-16 08:47 · 稿源:站长之家

站长之家注:Python不仅是最如今最通用的编程语言,而且在集成新功能时也是最灵活的,比如魔术命令(Magic commands)就是python shell当中重要的功能之一。以下我们来看下10个简单的魔术命令是如何帮助工程师提高生产力。

python中的魔术命令到底是什么?

魔术命令是对常规python代码的增强,这些命令由IPython内核提供。同时这些魔术命令通常以“%”字符作为前缀。

这些命令基本上是为解决我们面临的常见问题而添加的,并且也是为程序员的代码提供了一些快捷方式。目前有2种魔术命令可用-%前缀和%%前缀。

%前缀表示该命令在一行代码上运行,而%%前缀允许该命令在整个单元格上运行

以下是jupyter notebook中执行的魔术命令及其实现的列表

运行外部文件

当我们尝试在jupyter notebook中运行一些代码段时,我们希望运行位于某个目录中的外部代码文件。

%run允许你从jupyter Notebook运行任何外部python文件

上面的文件myCode.py包含一个输出上述语句的简单脚本。

如果我们指定文件名(包括%run命令的路径),它将执行该文件。

注意:%run还允许执行外部jupyter Notebook。

代码执行时间

你有没有考虑过你的代码需要多少时间才能运行?使用时间魔术命令可以追踪单元的总体执行情况。由于我们将在此处处理整个单元格,因此我们将%%作为时间关键字之前的前缀。

上面的单元格包含一个带随机计算的for循环。

%% time有助于获取运行for循环所需的执行时间。

将内容复制到外部文件

大多数的时候,你会觉得需要直接从jupyter notebook上将内容添加到python脚本或文本文件中。你无需复制所有内容并创建新文件,而可以通过在代码之前添加writefile命令直接导出单元格内容。

请注意命令前的%%,表示将导出单元格的全部内容。

由于我已经创建了包含某些内容的文件,因此它将显示“Overwrite myCode.py”,指定它将用上图所示的内容覆盖我的原始内容。

显示外部文件的内容

通常你会将需要的几行代码从外部文件复制到你的代码中

%pycat允许你显示任何目录中任何文件的内容,且无需花费很长时间来获取文件并打开文件进行复制。

它可以将外部文件的所有内容作为其输出,从实际应用来说,可以将它视为%writefile的反向逻辑。

列出所有变量

这个魔术命令显示整个jupyter notebook中使用的所有变量。

以下是3个变量——2个字符串和1个整数。 如果我们运行%who,它将列出我们定义的所有3个变量。

上面的代码显示所有变量,而与它们的数据类型无关。

为了显示特定的数据类型变量,我们需要在魔术命令之后传递数据类型。上面的代码显示所有字符串数据类型变量作为其输出。

在笔记本之间共享变量

这个魔术命令使你可以在不同的jupyter notebooks之间共享任何变量。你需要使用魔术命令传递原始变量。

为了检索变量,你需要传递带有'-r'参数的相同命令。

这是第一个笔记本的样子

然后在另一个笔记本中写检索此数据所需的代码

这可能是在不同笔记本之间共享任何数据类型的数据的最简单方法。

执行HTML脚本

%% html允许我们在单元格中编写html代码, 即该单元格将用作本单元格的html输出的编辑器。

以下代码包含一个用html创建的简单表。你会注意到html输出显示了预期的表格。

提示:你可以使用类似于HTML魔术命令的%% js magic命令在单元格中运行Javascript代码。

显示Matplotlib视图

%matplotlib内链魔术命令是最流行的命令。此命令允许Jupyternotebook在笔记本中显示matplotlib视图。此命令激活对jupyternotebook的matplotlib交互式支持。

我们已经导入了一些我们需要用来解释命令功能的库。

现在,我们将创建两个随机列表制作成图标

现在,我们将绘制数据的散点图

%matplotlib内链魔术命令使你可以可视化jupyternotebook本中的图形。

设置环境变量

这一魔术命令可以帮助你达成3件事情:

1、列出所有环境变量

2、获取特定环境变量的值,

3、为变量赋值

没有参数的%env将列出所有环境变量。

具有单个参数的%env将返回指定参数的值。

“%env变量值”将设置指定变量名称的值。

对象详细信息

%pinfo提供了有关随其一起传递的对象的详细信息。

在以下代码段中,我传递了一个简单的字符串“a”以及%pinfo以获取有关它的详细信息。

从上面的输出中,%pinfo提供有关字符串对象的所有信息。

你可以使用“%lsmagic”命令找到所有魔术命令列表。

这些是我的十大魔术命令,希望能帮助你提高生产力并节省时间。

注:本文编译自medium,作者Siddhesh Jadhav,原文标题为Top 10 Magic Commands in Python to Boost your Productivity

举报

  • 相关推荐
  • 君乐宝再登全球独角兽榜:科技创新引领乳业新质生产力

    胡润研究院发布《2025全球独角兽榜》,中国343家企业上榜居全球第二。君乐宝乳业凭借科技创新连续两年入选,成为行业唯一蝉联企业。该榜单衡量企业创新活力,君乐宝通过构建全产业链智能体系,实现生产流程数字化,关键设备数控化率达99.88%,获评国家级"卓越级智能工厂"。企业拥有1000余株优质乳酸菌菌种库,自主研发副干酪乳杆菌N1115等核心菌株,打破国外技术垄断,其乳制品创新项目获河北省科技进步一等奖。在低温酸奶领域,君乐宝简醇品牌市占率第一,鲜奶产品通过INF0.09秒杀菌技术获得"特优级生乳原料认证"。未来将持续加大科技投入,推动乳业向高科技、高品质方向发展。

  • Testin云测、人保信息、宁德时代等企业项目入选 “2025 新质生产力赋能最佳典型案例”

    6月26日,中国互联网周刊公布"全国企业新质生产力赋能最佳典型案例"评选结果。Testin云测与长城汽车合作的智能座舱AI测试系统入选,成为车机AI测试领域唯一代表案例。该系统通过AI技术实现自动化测试,显著提升测试效率和质量。此次评选覆盖工业互联网、智能医疗等多个领域,旨在推动行业数字化转型。Testin云测CEO表示将持续深耕车机AI测试技术,助力汽车行业智能化发展。当前AI测试技术正实现三大突破:全流程自动化、测试周期大幅缩短、智能化根因分析。数据显示,先进AI测试方案已提升测试效率超1.5倍。Testin云测作为AI测试技术引领者,已实现自然语言生成测试脚本等创新,其智能座舱测试系统严格遵循行业标准,为汽车智能化提供重要技术支撑。

  • 瑞幸又将联名的门槛提高了!

    联名,瑞幸在行! 这次,瑞幸又将联名玩出了新高度,一场「联名+结婚」,让半个品牌圈都“参与”了,随礼、新郎不是我、P新的结婚证……玩得不亦乐乎。 原本,联名被称为是品牌之间的“抱团取暖”,这次瑞幸玩了一把颇有趣味性的营销,为联名增加了喜感与乐趣。

  • 十大门窗品牌排行榜

    文章介绍了2025年门窗行业七大核心品牌及其优势:1)邦千家专注社区化服务和旧窗改造,15天交付周期快40%;2)皇派为亚运会指定品牌,主打高端隔音系统;3)派雅首创"深舒适"门窗,品牌价值181亿;4)新豪轩深耕行业22年,主打全景窄边窗;5)森鹰专注铝包木窗,北方市场领先;6)意博专注钛镁合金智能窗;7)墨瑟代表德系节能系统,出口超10亿。行业趋势显示头部品牌加速布局智能联动和低碳技术,新势力通过场景化方案赢得区域市场。

  • 技嘉科技 STEALTH Revolution 玩转简约装机美学 力邀创作者打造纯白梦幻桌机

    技嘉科技推出STEALTH Revolution活动,主打纯白美学装机概念。活动以X870AORUS STEALTH ICE主板为核心,邀请全球创作者打造个性化桌机。该系列采用背插式设计,简化装机流程,释放机箱空间,便于展示水冷设备和RGB灯效。新品涵盖X870/B850主板、RTX5090显卡及全景机箱等,联合10余家机箱品牌推出20余款兼容产品。活动提供限量主板供参赛者使用,并开放大众投票评选优秀作品,参与者有机会赢取丰厚奖品。技嘉旨在推动"背插主板×纯白机身"的装机新潮流,满足市场对简约风格的需求。

  • 2025十大贵金属投资平台安全排行榜 炒黄金正规平台TOP10揭晓

    2025年全球经济不确定性加剧背景下,贵金属作为避险资产配置价值凸显。文章重点分析了现货黄金与白银的投资优势,并发布《2025十大贵金属投资平台安全排行榜》,从合规资质、交易系统稳定性、资金安全等维度评估。安环球凭借多年深耕、合规资质和稳定交易系统位列榜首,富得贵金属、美建智汇等平台分列其后。文章提醒投资者需警惕"黑平台",选择具备监管资质、用户口碑良好的正规平台,特别在市场波动期更应关注系统稳定性和出入金效率。

  • 曝苹果折叠屏iPhone面板已开始生产:首批货源由三星提供

    据媒体报道,苹果首款可折叠iPhone显示屏由三星生产,该公司在韩国忠清南道牙山市的A3工厂建立了一条生产线,专门生产苹果折叠屏所需的OLED面板,目前工厂相关工程已进入最后阶段,年产能可达1500万块。 消息称苹果计划在2026年生产600万至800万台可折叠iPhone,尽管三星1500万块的年产能远超苹果2026年的需求,但这家供应商也会为苹果后续折叠屏机型做好准备。 目前三星和

  • 十大门窗品牌排行榜,为何经常出现邦千家?

    邦千家门窗凭借技术创新、服务模式和市场策略差异化优势快速崛起。其核心亮点包括:1)研发防结露排水等专利技术解决江南潮湿问题,智能联动系统响应"双碳"政策;2)建立220家社区服务网点,交付周期缩短至15天,通过数字化工具提升30%业务成功率;3)聚焦长三角市场,以"实干家"形象强化品牌认知,结合母公司的铝材产能优势。针对南方推出防潮产品,北方推广光伏节能门窗,年轻化设计吸引新消费群体。通过精准解决用户痛点实现持续增长,未来在智能化布局下行业影响力有望进一步提升。

  • 雷军称一定会全力以赴抓紧生产 争取早日交付

    近日,小米汽车App上关于小米YU7的预估交付时间引发广泛关注。该App显示,小米YU7共有三个版本,不同版本预估交付时间有所差异。其中,标准版锁定订单后最快需55-58周交付,是三个版本中交付等待时间最长的;Pro版最快交付时间为49-52周;顶配的小米YU7Max相对较快,但最快也需35-38周才能交付,这意味着消费者订车后最长可能要等待约一年才能提车。

  • 权威出炉!2025十大优质国际黄金交易平台汇总排行榜单

    本文介绍了2025年十大优质国际黄金交易平台,包括宝富金业、盛世金业、领航贵金属等。这些平台在监管资质、技术实力、客户服务等方面表现突出,提供多样化的黄金交易产品和服务。其中宝富金业凭借综合实力荣登榜首,采用MT5交易系统,提供24小时客服和全面风险管理工具。其他平台也各具特色,如盛世金业注重技术创新,领航贵金属提供AA级安全交易环境。文章强调黄