【Python进阶(四)】——魔术命令

news/2024/7/27 8:38:41/文章来源:https://blog.csdn.net/jd1813346972/article/details/137274345

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972

   个人介绍: 研一|统计学|干货分享
         擅长Python、Matlab、R等主流编程软件
         累计十余项国家级比赛奖项,参与研究经费10w、40w级横向

文章目录

  • 1 运行.py文件: %run
  • 2 统计运行时间: %timeit与%%timeit
    • 2.1 %timeit
    • 2.2 %%timeit
  • 3 更改异常信息的显示模式:%xmode
    • 3.1 mode:Plain
    • 3.2 mode: Verbose
  • 4 调试程序: %debug
  • 5 程序运行的逐行统计:%prun与%lprun
  • 6 内存使用情况的统计: %memit

【Python进阶(四)】——魔术命令,建议收藏!


该篇文章首先利用Python展示了其常的魔术命令,包括类的运行程序;运行时间计算;更在异常信息;调试程序;程序运行情况;内存使用情况的相关魔术命令。

1 运行.py文件: %run

 运行程序:

import os
os.getcwd() #查询当前工作目录
os.chdir("D:\\pythonjupyter")  #改变当前工作目录
%run testme.py 

testme.py 为"D:\pythonjupyter"工作路径下的.py文件

2 统计运行时间: %timeit与%%timeit

2.1 %timeit

  运行程序:

%timeit myList2=[n**2 for n in range(100)]%timeit x=1#查看某行代码运行时间

  运行结果:

26.3 µs ± 522 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)
10.7 ns ± 0.414 ns per loop (mean ± std. dev. of 7 runs, 100000000 loops each)

2.2 %%timeit

  运行程序:

%%timeit x=1  #查看多行代码所需时间(%%timeit前不能有任何代码,注释类的代码都不行,否者报错)
x=x+2
x=x*2

运行结果:

2.71 µs ± 37.1 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)

%timeit与%%timeit区别: %timeit为统计单行代码运行时间;%%timeit为统计多行代码所需时间。

3 更改异常信息的显示模式:%xmode

3.1 mode:Plain

  运行程序:

%xmode Plain
x1=2
x2=X1

  运行结果:

Exception reporting mode: Plain
Traceback (most recent call last):File "<ipython-input-115-59f69ef917e0>", line 3, in <module>x2=X1NameError: name 'X1' is not defined

3.2 mode: Verbose

  运行程序:

%xmode Verbose
x1=2
x2=X1

  运行结果:

Exception reporting mode: Verbose
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-116-a2ff507801f7> in <module>1 get_ipython().run_line_magic('xmode', 'Verbose')2 x1=2
----> 3 x2=X1global x2 = undefinedglobal X1 = undefinedNameError: name 'X1' is not defined

4 调试程序: %debug

  运行程序:

%debug
x1=2
x2=X1

  运行结果:

> <ipython-input-116-a2ff507801f7>(3)<module>()1 get_ipython().run_line_magic('xmode', 'Verbose')2 x1=2
----> 3 x2=X1ipdb> q
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-117-e8d5ec0ce5b1> in <module>1 get_ipython().run_line_magic('debug', '')2 x1=2
----> 3 x2=X1global x2 = undefinedglobal X1 = undefinedNameError: name 'X1' is not defined

5 程序运行的逐行统计:%prun与%lprun

  运行程序:

def myfunc1(n):n=n+1for i in [1,2,3,4,5]:n=n+ireturn(n)
%prun myfunc1(100)   #%prun:程序运行情况逐行统计
%lprun myfunc1(100)  #%lprun:程序运行情况逐行统计,并非ipython自带命令

6 内存使用情况的统计: %memit

  运行程序:

%load_ext memory_profiler  #导入包
%memit myfunc2(100)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1034274.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Codeforces Round #818 (Div. 2) A-C

人类智慧 A. 题意&#xff1a;求满足1<a,b<n且lcm(a,b)/gcd(a,b)<3的(a,b)的个数 转化 a/gcd*b*gcd<3 可以划归为1*2 1*1 2*1 3*1 1*3 则可以转变成一个统计倍数问题 #include<bits/stdc.h> using namespace std; using ll long long; using pii pair&…

【总结】在嵌入式设备上可以离线运行的LLM--Llama

文章目录 Llama 简介运用另一种&#xff1a;MLC-LLM 一个令人沮丧的结论在资源受限的嵌入式设备上无法运行LLM&#xff08;大语言模型&#xff09;。 一丝曙光&#xff1a;tinyLlama-1.1b&#xff08;10亿参数&#xff0c;需要至少2.98GB的RAM&#xff09; Llama 简介 LLaMA…

【与C++的邂逅】---- 函数重载与引用

关注小庄 顿顿解馋(▿) 喜欢的小伙伴可以多多支持小庄的文章哦 &#x1f4d2; 数据结构 &#x1f4d2; C 引言 : 上一篇博客我们了解了C入门语法的一部分&#xff0c;今天我们来了解函数重载&#xff0c;引用的技术&#xff0c;请放心食用 ~ 文章目录 一. &#x1f3e0; 函数重…

OSPF之单区域配置

文章目录 单区域配置项目背景项目分析拓扑图配置思路基础配置命令查看路由器接口IP地址信息OSPF配置 测试PC1与PC2互通查看OSPF邻居表修改OSPF路由器的router-id完美的OSPF配置命令写法常用查询命令 单区域配置 项目背景 企业内部存在多个部门&#xff0c;分别属于不同的网段…

MyBatis-Plus04(条件构造器)

条件构造器和常用接口 wrapper介绍 Wrapper &#xff1a; 条件构造抽象类&#xff0c;最顶端父类 AbstractWrapper &#xff1a; 用于查询条件封装&#xff0c;生成 sql 的 where 条件 QueryWrapper &#xff1a; 查询条件封装 UpdateWrapper &#xff1a; Update 条件封装 A…

wireshark创建显示过滤器实验简述

伯克利包过滤是一种在计算机网络中进行数据包过滤的技术&#xff0c;通过在内核中插入过滤器程序来实现对网络流量的控制和分析。 在数据包细节面板中创建显示过滤器&#xff0c;显示过滤器可以在wireshark捕获数据之后使用。 实验拓扑图&#xff1a; 实验基础配置&#xff1…

网络故障排查方案(二层环路问题)

出现二层环路的原因 二层环路最大的危害是会产生广播风暴&#xff0c;以太网是一个支持广播的网络&#xff0c;在没有环路的环境重&#xff0c;广播包再网络中以泛红的形式被送出&#xff0c;环路中的广播报文反复来回转发&#xff0c;消耗链路带宽 支持二层环路破坏的协议有&a…

vscode上编辑vba

安装xvba插件更换vscode的工作目录启动扩展服务器在config.json中添加目标工作簿的名称加载excel文件&#xff08;必须带宏的xlsm&#xff09;这个扩展就会自动提取出Excel文件中的代码Export VBA&#xff08;编辑完成的VBA代码保存到 Excel文件 &#xff09;再打开excel文件可…

HTML 点击图片后悬浮放大图片

引入插件 1.viewer.js 2.引入viewer.css 3.引入jquery-viewer.min.js 4.添加图片点击事件function click(){ $(<img>, {src: 图片url }).viewer(show); } 效果图&#xff1a; 可网上自行下载对应插件&#xff0c;或新建相关命名文件后&#xff0c;把我下文的js代码…

一个金融长期主义案例:金融壹账通的财务减亏与生产力创新之路

产业变革正在进入新一轮竞速期&#xff0c;社会对新质生产力的需求越来越迫切。在此背景下&#xff0c;金融业也正在坚定重塑自我、向外赋能的决心。 在微观的企业角度上&#xff0c;改变也正悄然发生。3月18日&#xff0c;在美港股双重上市的金融壹账通公布2023年年度业绩报告…

DHCP原理重磅来袭——走过路过不要错过

目录 一.DHCP来源 &#xff08;1)手工分配缺点 (2)DHCP优点 二.DHCP设备调试 &#xff08;1&#xff09;.基本配置&#xff1a; &#xff08;2&#xff09;接口地址池 1.开启DHCP功能 2.开启DHCP接口地址池功能 3.查看IP地址分配结果 &#xff08;3&#xff09;全局地…

浅谈iOS开发中的自动引用计数ARC

1.ARC是什么 我们知道&#xff0c;在C语言中&#xff0c;创建对象时必须手动分配和释放适量的内存。然而&#xff0c;在 Swift 中&#xff0c;当不再需要类实例时&#xff0c;ARC 会自动释放这些实例的内存。 Swift 使用 ARC 来跟踪和管理应用程序的内存&#xff0c;其主要是由…

3.5网安学习第三阶段第五周回顾(个人学习记录使用)

本周重点 ①SSRF服务器端请求伪造 ②序列化和反序列化 ③Vaudit代码审计 本周主要内容 ①SSRF服务器端请求伪造 一、概述 SSRF: server site request forgery (服务器端请求伪造)。 SSR: 服务端请求&#xff0c;A服务器通过函数向B服务器发送请求。 SSRF发生的前提条件…

鸿蒙实战开发-如何使用后台代理提醒,实现一个简易闹钟

介绍 本篇Codelab将介绍如何使用后台代理提醒&#xff0c;实现一个简易闹钟。要求完成以下功能&#xff1a; 展示指针表盘或数字时间。添加、修改和删除闹钟。展示闹钟列表&#xff0c;并可打开和关闭单个闹钟。闹钟到设定的时间后弹出提醒。将闹钟的定时数据保存到轻量级数据…

论文阅读-多级检查点重新启动MPI应用的共同设计

论文名称&#xff1a;Co-Designing Multi-Level Checkpoint Restart for MPI Applications 摘要—高性能计算&#xff08;HPC&#xff09;系统继续通过包含更多硬件组件来支持更大的应用部署来扩展。关键是&#xff0c;这种扩展往往会减少故障之间的平均时间&#xff0c;从而使…

k8s的pod访问service的方式

背景 在k8s中容器访问某个service服务时有两种方式&#xff0c;一种是把每个要访问的service的ip注入到客户端pod的环境变量中&#xff0c;另一种是客户端pod先通过DNS服务器查找对应service的ip地址&#xff0c;然后在通过这个service ip地址访问对应的service服务 pod客户端…

vue-quill-editor 富文本编辑器(可上传视频图片),组件挂载的方式实现

1.安装 npm install vue-quill-editor --save npm install quill-image-drop-module --save npm install quill-image-resize-module --save2.在组件下面新增组件 QlEditor (1)index.vue <template><div><div idquillEditorQiniu><!-- 基于element…

vulnhub pWnOS v2.0通关

知识点总结&#xff1a; 1.通过模块来寻找漏洞 2.msf查找漏洞 3.通过网站源代码&#xff0c;查看模块信息 环境准备 攻击机&#xff1a;kali2023 靶机&#xff1a;pWnOS v2.0 安装地址&#xff1a;pWnOS: 2.0 (Pre-Release) ~ VulnHub 在安装网址中看到&#xff0c;该靶…

2024年第十届国际虚拟现实大会(ICVR 2024)即将召开!

会议面向虚拟现实、增强现实、人工智能等互联网新技术领域的专家及学者&#xff0c; 致力于共同促进国内外虚拟现实的发展与应用。 2014年至今&#xff0c;ICVR在全球新加坡&#xff0c;美国洛杉矶&#xff0c;中国成都&#xff0c;香港等国家及地区召开&#xff0c;面向虚拟现…

干部任免审批表管理系统(三) 读取Lrmx格式文件数据并存储到实体类中

前言&#xff1a; Lrmx文件本质就是读取xml文件&#xff0c;数据库字段设计和类的属性设计都xml中节点保持了一致。那么就可以用类的反射来实现给字段赋值&#xff0c;这样可以大大节省代码的编写量。 一、加载文件并遍历所有的节点&#xff1a; File f new File(this.…