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!"
相关推荐
hans汉斯12 小时前
国产生成式人工智能解决物理问题能力研究——以“智谱AI”、“讯飞星火认知大模型”、“天工”、“360智脑”、“文心一言”为例
大数据·人工智能·算法·aigc·文心一言·汉斯出版社·天工
没事儿写两篇1 天前
Anaconda 的开源替代软件 Miniforge
开源·conda·miniconda·miniforge
次旅行的库1 天前
不能将windows本地虚拟环境打包到实验室服务器
linux·windows·conda
云和数据.ChenGuang3 天前
python对接mysql和模型类的故障
数据库·python·mysql·oracle·conda·virtualenv
Clarice__3 天前
VScode上的python使用教程
vscode·python·conda
存在即合理L3 天前
Windows中安装Anaconda后如何在powershell使用conda activate命令
windows·conda
m0_647057963 天前
PyCharm 2023.2.5 Conda Interpreter 解析失败问题排查与解决(macOS)
macos·pycharm·conda
YelloooBlue4 天前
深度学习 SOP: conda通过命令快速构建指定版本tensorflow gpu环境。
深度学习·conda·tensorflow
小舞O_o4 天前
CondaError: Run ‘conda init‘ before ‘conda activate‘
linux·python·conda
一招定胜负5 天前
提示词工程核心知识体系(优化增补版)
文心一言