IPython的使用技巧整理

server/2024/10/10 14:22:39/

IPython(Interactive Python)是一个增强的Python交互式解释器,提供了强大的功能和工具,帮助开发者更高效地编写和调试代码。以下是一些IPython的使用技巧,帮助你更好地利用这个工具:

 1. 安装IPython

IPython可以通过pip安装:
sh
pip install ipython


 2. 启动IPython

在终端输入 ipython 启动IPython交互式环境:
sh
ipython


 3. 基本功能

 3.1 自动补全
使用 Tab 键可以自动补全变量、函数和模块名。例如,输入 pri 然后按 Tab 键,会自动补全为 print。

 3.2 魔法命令(Magic Commands)
IPython 提供了一些特殊命令,称为魔法命令,可以提高开发效率。这些命令以 % 或 %% 开头。

 常用魔法命令
- %time:计算单行代码的执行时间。
  python
  %time sum(range(1000000))
  
- %timeit:多次执行代码并返回平均执行时间。
  python
  %timeit sum(range(1000000))
  
- %run:执行Python脚本。
  python
  %run my_script.py
  
- %pwd:显示当前工作目录。
  python
  %pwd
  
- %ls:列出当前目录下的文件和文件夹。
  python
  %ls
  
- %history:显示命令历史。
  python
  %history
  

 3.3 执行系统命令
在IPython中,可以直接使用 ! 来执行系统命令。
python
!ls
!pwd


 3.4 内置帮助
使用 ? 获取对象的帮助文档。
python
print?
sum?


使用 ?? 查看对象的源码(如果适用)。
python
sum??


 4. 进阶功能

 4.1 交互式绘图
IPython与Matplotlib集成良好,适合用于交互式绘图。启动IPython时,可以添加 --matplotlib 选项来启用交互式绘图。
sh
ipython --matplotlib


 4.2 变量查看器
使用 %whos 可以查看当前会话中的所有变量。
python
%whos


 4.3 配置IPython
可以通过编辑 ipython_config.py 文件来自定义IPython的行为。使用以下命令生成配置文件:
sh
ipython profile create

配置文件位于 ~/.ipython/profile_default/ipython_config.py。

 4.4 扩展IPython
IPython支持加载扩展功能模块,可以通过 %load_ext 命令加载。例如,加载和使用 line_profiler 扩展:
python
%load_ext line_profiler
%lprun -f my_function my_function(args)


 5. Jupyter Notebook

IPython是Jupyter Notebook的核心,Jupyter Notebook提供了更友好的用户界面,适合数据分析和文档撰写。

 5.1 安装和启动Jupyter Notebook
安装Jupyter Notebook:
sh
pip install notebook

启动Jupyter Notebook:
sh
jupyter notebook


 5.2 使用Markdown
在Jupyter Notebook中可以使用Markdown编写文档。例如:
markdown
 标题
 二级标题
- 列表项


 5.3 内嵌代码和可视化
在Jupyter Notebook中,可以直接执行Python代码,并且嵌入Matplotlib图表和其他可视化内容。

 5.4 扩展和插件
Jupyter Notebook有许多扩展和插件,可以通过安装 jupyter_contrib_nbextensions 获取。
sh
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user


通过以上步骤和技巧,你可以充分利用IPython和Jupyter Notebook,提高开发效率和代码质量。


http://www.ppmy.cn/server/51383.html

相关文章

Python网络安全项目开发实战,怎么扫描漏洞

注意:本文的下载教程,与以下文章的思路有相同点,也有不同点,最终目标只是让读者从多维度去熟练掌握本知识点。 下载教程: Python网络安全项目开发实战_扫描漏洞_编程案例解析实例详解课程教程.pdf Python在网络安全项目开发实战中扮演着至关重要的角色,尤其在漏洞扫描方面…

UFS Power Mode Change 介绍

一. UFS Power Mode Change简介 1.UFS Power Mode指的是Unipro层的Power State, 也可以称为链路(Link)上的Power Mode, 可以通过配置Unipro Attribute, 然后控制切换Unipro Power State, 当前Power Mode Change有两种触发方式: (1) 通过DME Power Mode Change触发…

从零实现GPT【1】——BPE

文章目录 Embedding 的原理训练特殊 token 处理和保存编码解码完整代码 BPE,字节对编码 Embedding 的原理 简单来说就是查表 # 解释embedding from torch.nn import Embedding import torch# 标准的正态分布初始化 也可以用均匀分布初始化 emb Embedding(10, 32) …

C++初学者指南第一步---13.聚合类型

C初学者指南第一步—13.聚合类型 文章目录 C初学者指南第一步---13.聚合类型1. 类型分类(简化)2. 如何定义和使用3. 为什么选择自定义类型/数据聚合?4. 聚合类型初始化5.混合6. 复制7. 值和引用的语义8.聚合的向量(std::vector)9.最令人烦恼的…

XSS+CSRF组合拳

目录 简介 如何进行实战 进入后台创建一个新用户进行接口分析 构造注入代码 寻找XSS漏洞并注入 小结 简介 (案例中将使用cms靶场来进行演示) 在实战中CSRF利用条件十分苛刻,因为我们需要让受害者点击我们的恶意请求不是一件容易的事情…

【MySQL数据库】:MySQL视图特性

目录 视图的概念 基本使用 准备测试表 创建视图 修改视图影响基表 修改基表影响视图 删除视图 视图规则和限制 视图的概念 视图是一个虚拟表,其内容由查询定义,同真实的表一样,视图包含一系列带有名称的列和行数据。视图中的数据…

vxe-table 列表过滤踩坑_vxe-table筛选

但是这个过滤输入值必须是跟列表的值必须一致才能查到,没做到模糊查询的功能,根据关键字来过滤并没有实现。 下面提供一下具体实现方法:(关键字来过滤) filterNameMethod({ option, row }) {if (row.name.indexOf(op…

Linux知识汇总

方法一: 当ens33的ip地址丢失时使用下面命令找回 service NetworkManager stop service network restart方法二: 网卡没有启动,只要指定再次启动这个网卡即可 ifconfig ens33 up 启动指定网卡 方法三: 执行完命令之后再次查看网络信息已经可以看到ens33的网卡了…