IPython 使用技巧整理

IPython 是一个增强版的 Python 交互式解释器,它提供了许多有用的功能,比如自动补全、代码历史、多行编辑、魔术命令等。

1. 自动补全功能

IPython 的自动补全功能可以大大提高编码效率。当你在编写代码时,只需按下 Tab 键,IPython 就会自动补全你正在输入的函数名、变量名等。

python 复制代码
import numpy as np

# 按下 Tab 键自动补全
np.a # 然后按 Tab

2. 代码历史

IPython 允许你浏览和重用之前的命令。使用 %history 魔术命令可以查看历史命令。

python 复制代码
%history

3. 多行编辑

IPython 支持多行编辑,你可以使用 : 来开始一个多行命令或者代码块。

python 复制代码
:for i in range(5):
    print(i)

4. 魔术命令

IPython 提供了许多魔术命令,它们以 % 开头。例如,%timeit 可以测量代码块的执行时间。

python 复制代码
%timeit [x**2 for x in range(1000)]

5. 变量查看

使用 %whos 命令可以查看当前命名空间中的所有变量及其类型。

python 复制代码
import numpy as np
a = np.arange(10)
%whos

6. 交互式绘图

IPython 可以与 matplotlib 集成,实现交互式绘图。

python 复制代码
%matplotlib inline
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)

7. 资源管理

使用 %xmode 可以改变 IPython 的资源管理模式,例如,设置为 'verbose' 模式会显示更多的信息。

python 复制代码
%xmode verbose

8. 配置文件

IPython 可以通过配置文件来自定义设置。你可以创建一个 ipython_config.py 文件来设置启动参数。

python 复制代码
# 在 ipython_config.py 中设置启动参数
c.InteractiveShellApp.exec_files = ['my_startup_script.py']

9. 并行计算

IPython 支持并行计算,可以通过 IPython 的并行模块来实现。

python 复制代码
from IPython.parallel import Client, require
rc = Client()
dview = rc[:]

# 并行执行代码
dview.push({'x': 100})
dview.apply_sync(lambda x: x**2)

10. 集成其他语言

IPython 还可以与其他编程语言集成,比如使用 %%script 魔术命令来执行 Bash 脚本。

python 复制代码
%%script bash
echo "Hello from Bash!"
相关推荐
一枕槐安4872 天前
大模型 API 调用封装:统一适配 GPT、文心一言、通义千问
人工智能·gpt·文心一言·大模型api·流式输出·统一封装·多模态路由
SoulRoar.2 天前
WSL2 + Conda 环境下MinerU 4.x GPU 服务部署与 systemd 常驻指南
conda·wsl·文档解析·mineru
看浪的路人2 天前
第2讲:LLM API 统一网关——把 OpenAI/Claude/文心一言 管起来
人工智能·文心一言
喆星时瑜6 天前
探索 Anaconda 中的 JupyterLab、Jupyter Notebook、iPython 解释器(Qt 控制台)和 Spyder IDE
ide·jupyter·ipython
benjiangliu14 天前
恩培趣味计算机视觉-01-conda环境和Python库
开发语言·python·conda
XLYcmy16 天前
《数字经济赋能城市低碳治理的路径研究检索报告》审阅与修改指导意见——基于完整检索报告体例的完整性诊断、学术规范核查与方法论纠偏 上
数据库·ai·chatgpt·文心一言·检索·知网·豆包
weixin_4617694018 天前
conda create 创建容器 Failed to resolve ‘repo.anaconda.com‘问题
开发语言·python·conda·repo·网络问题·无法创建
CallFay云起未来19 天前
2026年AI客服能不能减少人工回复?从知识检索到人机协同的技术实现
java·大数据·前端·人工智能·架构·文心一言
饭来_22 天前
Ubuntu 中出现 CondaToSNonInteractiveError 的解决方法
ubuntu·conda·debug
emo_2b24 天前
Pycharm配置conda解释器时遇到的问题及解决方法
linux·pycharm·conda