IPython 使用技巧整理
IPython 是一个增强版的 Python 交互式解释器,它提供了许多有用的功能,比如自动补全、代码历史、多行编辑、魔术命令等。
1. 自动补全功能
IPython 的自动补全功能可以大大提高编码效率。当你在编写代码时,只需按下 Tab
键,IPython 就会自动补全你正在输入的函数名、变量名等。
import numpy as np
# 按下 Tab 键自动补全
np.a # 然后按 Tab
2. 代码历史
IPython 允许你浏览和重用之前的命令。使用 %history
魔术命令可以查看历史命令。
%history
3. 多行编辑
IPython 支持多行编辑,你可以使用 :
来开始一个多行命令或者代码块。
:for i in range(5):
print(i)
4. 魔术命令
IPython 提供了许多魔术命令,它们以 %
开头。例如,%timeit
可以测量代码块的执行时间。
%timeit [x**2 for x in range(1000)]
5. 变量查看
使用 %whos
命令可以查看当前命名空间中的所有变量及其类型。
import numpy as np
a = np.arange(10)
%whos
6. 交互式绘图
IPython 可以与 matplotlib 集成,实现交互式绘图。
%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’ 模式会显示更多的信息。
%xmode verbose
8. 配置文件
IPython 可以通过配置文件来自定义设置。你可以创建一个 ipython_config.py
文件来设置启动参数。
# 在 ipython_config.py 中设置启动参数
c.InteractiveShellApp.exec_files = ['my_startup_script.py']
9. 并行计算
IPython 支持并行计算,可以通过 IPython 的并行模块来实现。
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 脚本。
%%script bash
echo "Hello from Bash!"