IPython 日常使用小技巧

news/2024/9/18 12:19:26/ 标签: ipython, python

IPython 是一个强大的交互式 Python shell,可以提升你的编程效率和体验。以下是一些常用的 IPython 使用技巧:

一、基本使用

1.启动 IPython

在终端中输入以下命令启动 IPython:

python>ipython

2.自动补全

在 IPython 中,可以通过按 Tab进行自动补全变量、函数名和模块名。

3.快速查看文档

使用 ??? 可以快速查看对象的文档和源码:

python">import numpy as np
np.linspace?
np.linspace??
运行脚本

在 IPython 中可以直接运行 Python 脚本:

%run script.py

二、魔法命令(Magic Commands)

(1)常用魔法命令

IPython 提供了一些“魔法命令”,它们以 %%% 开头。

1.查看所有可用的魔法命令
%lsmagic
2.查看命令帮助
%magic

(2)时间相关的魔法命令

1.计时代码块执行时间
%timeit sum(range(1000))
2.计时多行代码执行时间
%%timeit
a = range(1000)
sum(a)

三、文件系统操作

1.列出当前目录的文件
%ls
2.改变当前工作目录
%cd /path/to/directory
3.查看当前工作目录
%pwd

四、交互式调试

1.启动调试器

在代码中插入以下命令启动调试器:

%debug
2.调试上一个异常

在抛出异常后,可以使用以下命令进入调试模式:

%debug
3.代码性能分析 查看代码性能

使用 %prun 对代码进行性能分析:

%prun sum(range(1000))

五、交互性和可视化

1.内嵌 Matplotlib 图表

在 IPython 中,可以使用 %matplotlib 来使 Matplotlib 图表在同一窗口内显示:

%matplotlib inline
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6])
plt.show()

2.交互式小工具

使用 ipywidgets 库可以创建交互式小工具:

from ipywidgets import interactdef f(x):return xinteract(f, x=10)

六、高级功能

(1)存储和加载会话

1.保存会话中的变量
%store my_variable
2.加载会话中的变量
%store -r my_variable

(2)执行 shell 命令

在 IPython 中可以执行 shell 命令:

!ls
!echo "Hello, World!"

自定义配置

可以通过编辑 python>ipython_config.py 文件来自定义 IPython 的配置:

python>ipython profile create

然后编辑生成的配置文件(通常位于 ~/.python>ipython/profile_default/)。

扩展功能

IPython 允许加载和使用扩展功能模块:

%load_ext autoreload
%autoreload 2


http://www.ppmy.cn/news/1503528.html

相关文章

基于单片机控制的家电产品硬件故障诊断

摘要: 在现阶段家用电子产品生产制造的过程中,需要应用到非常多的单片机以及单片机控制技术,单片机凭借着自身体积小、反应快、功耗低的优势迅速抢占了家电产品的市场。并且在单片机实际的应用过程中,通过对单片机控制技术的掌握可…

【视觉SLAM】 G2O库编写步骤介绍

介绍G2O,并阐述基本使用方法。 G2O以稀疏优化器(SparseOptimizer)为核心,分为图的构建与求解器构建两部分,分别对应该图的上下两部分。 G2O编程步骤共分七步,如图所示: 构建求解器 1、创建一…

零基础入门转录组数据分析——机器学习算法之SVM-RFE(筛选特征基因)

零基础入门转录组数据分析——机器学习算法之SVM-RFE(筛选特征基因) 目录 零基础入门转录组数据分析——机器学习算法之SVM-RFE(筛选特征基因)1. SVM-RFE基础知识2. SVM-RFE(Rstudio)——代码实操2. 1 数据…

721. 账户合并

721. 账户合并 题目链接&#xff1a;721. 账户合并 代码如下&#xff1a; //参考链接:https://leetcode.cn/problems/accounts-merge/solutions/564305/zhang-hu-he-bing-by-leetcode-solution-3dyq class UnionFind { public:vector<int> parent;UnionFind(int n){par…

协程的八种创建方式

协程简介 在深入了解创建方式之前&#xff0c;我们先简要回顾一下协程是什么。协程是轻量级的线程。它们在协作式多任务处理中运行&#xff0c;允许在不阻塞线程的情况下挂起和恢复。这使得协程非常适合进行异步编程和高性能的并发任务。&#x1f310; Kotlin中创建协程的方式…

VulnHub-Tomato靶机渗透教程 简单易懂 报错链接

Tomato靶机是一个用于渗透测试和漏洞研究的虚拟机。 环境准备 攻击机&#xff08;Kali Linux&#xff09;IP&#xff1a;192.168.252.134 目标机 IP&#xff1a;192.168.252.133 这里我两台虚拟机都是NAT模式 渗透步骤 1.端口扫描 这里我没用kali自带的 我用的物理机上…

你了解渗透测试吗?渗透测试在网络安全行业属于食物链什么层级?

可能大家对于行业存在食物链这一说法&#xff0c;印象最深的往往是编制行业&#xff0c;所谓的等级主义在那里确实更为明显。但实际上&#xff0c;各行各业都或多或少存在这种层级结构&#xff0c;网络安全领域也不例外&#xff0c;毕竟都是一些所谓的“人情世故”。那么就网络…

【C语言】数据类型全解析:编程效率提升的秘诀

目录 C语言数据类型详解1. 基本数据类型1.1 整型示例代码输出结果 1.2 浮点型示例代码输出结果 1.3 字符型示例代码输出结果 2. 派生数据类型2.1 数组示例代码输出结果 2.2 指针示例代码输出结果 2.3 结构体示例代码输出结果 2.4 共用体示例代码输出结果 3. 类型限定符3.1 cons…

无人机之海事执法篇

无人机技术已经在多个领域得到广泛应用&#xff0c;在海事执法领域&#xff0c;无人机的应用正逐渐成为一种重要的手段&#xff0c;为保障海上安全和秩序发挥着关键作用。 一、海上巡逻与监视 无人机可以覆盖广阔的海域&#xff0c;进行实时的空中巡逻和监视。它们能够快速响应…

python coding时遇到的问题

Q&#xff1a;只有cpu的时候加载模型 A&#xff1a;checkpoint torch.load(model_path, map_locationtorch.device(‘cpu’)) Q&#xff1a;vscode的文件路径和spyder的不一样 A&#xff1a;在vscode中&#xff0c;右键要用的文件&#xff0c;选择“文件相对路径”

【python案例】基于Python 爬虫的房地产数据可视化分析设计与实现

引言 研究背景与意义 房地产行业在我国属于支柱性产业&#xff0c;在我国社会经济发展中一直扮演着重要角色。房价问题&#xff0c;尤其是大中城市的房价问题&#xff0c;一直是政府、大众和众多研究人员关注的热点。如何科学地预测房价是房价问题的研究方向之一。随着互联网…

Python标准库itertools模块

itertools.chain itertools.chain 是 Python 标准库 itertools 模块中的一个函数&#xff0c;用于将多个可迭代对象&#xff08;如列表、元组、集合等&#xff09;连接成一个单一的可迭代对象。这在需要在一个循环中处理多个序列时特别有用&#xff0c;而不需要先将它们连接成…

【.NET 8 实战--孢子记账--从单体到微服务】--编写服务端框架

框架是一个项目所必须的&#xff0c;是一组预先编写的代码库和工具&#xff0c;提供了一个可以复用的结构&#xff0c;以帮助开发者快速构建应用程。即使项目目前是一个单体应用&#xff0c;我们还是需要先设计框架的&#xff0c;但是我们不可能在项目的初期就编写出一个完美的…

45.二维数组练习:计算季度营业额和年总营业额

/* 某商场每个季度营业额如下,单位&#xff1a;万元 第一季度&#xff1a;22&#xff0c;66&#xff0c;44 第二季度&#xff1a;77&#xff0c;33&#xff0c;88 第三季度&#xff1a;25&#xff0c;45&#xff0c;65 第四季度&#xff1a;11&#xff0c;66&#xff0c;99 要求…

复制知乎文字内容

复制知乎文字内容 以edge浏览器为例&#xff1a; 以edge浏览器为例&#xff1a; 先点击F12&#xff08;也就是鼠标右键->检查&#xff09;再点击F1选择禁用Javascript 之后知乎的文字就可以正常复制了。 &#xff08;注意&#xff1a;退出浏览器的时候记得把这一条恢复过…

Autoware.universe 高效学习系列

Autoware.universe 高效学习系列 1 说明2 正文 1 说明 2024 年上半年&#xff0c;我们使用 ubuntu22.04 ros2 humble 版本&#xff0c;系统学习了 ros2 &#xff0c;并总结输出了 ROS2 高效学习系列。由于本人的行业属性&#xff0c;在完成 ros2 中间件的学习后&#xff0c;需…

【C++】实验十四

题目&#xff1a; 1、编写程序&#xff0c;输入a&#xff0c;b&#xff0c;c&#xff0c;检查a&#xff0c;b&#xff0c;c是否满足以下条件&#xff0c;如不满足&#xff0c;由cerr输出有关错误信息。 2、从键盘输入一批数值。要求保留3位小数&#xff0c;在输出时上下行小数…

健康小贴士丨中考考生怎么吃得好?

文章目录 引言三餐最佳的进食时间引言 中考正值初夏,气温急剧升高,食物易滋生细菌,发生食物中毒的风险也随之增加,医生建议 选择新鲜的食材,煮熟煮透,现吃现做,尽量不食用剩饭剩菜;不在路边露天摊点、不到无证和食品安全状况差的餐馆用餐;尽量减少在外就餐和点外卖的…

Netty必知必会(一)——零拷贝

一、什么是零拷贝&#xff1f;&#xff08;OS层面、用户态和内核态&#xff09; 9.1 什么是零拷贝&#xff1f; | 小林coding (xiaolincoding.com) 1.传统的文件传输 2.mmap write 实现零拷贝 mmap() 系统调用函数会直接把内核缓冲区里的数据「映射」到用户空间。 3.sendfi…

GPT-4o mini一手测评:懂得不多,但答得极快

在性能方面,GPT-4o mini 在 MMLU 上的得分为 82%,在 LMSYS 排行榜的聊天方面分数优于 GPT-4。 OpenAI 突然上线新模型 GPT-4o mini, 声称要全面取代 GPT-3.5 Turbo。 在性能方面,GPT-4o mini 在 MMLU 上的得分为 82%,在 LMSYS 排行榜的聊天方面分数优于 GPT-4。 在价格…