使用IPython增强交互式体验
2008-09-30 12:44:29 来源:WEB开发网宏允许用户为一段代码定义一个名字,这样你可以在以后使用这个名字来运行这段代码。就象在magic关键字edit中提到的,列表切片法也适用于宏定义。假设有一个历史记录如下:
In [3]: hist
1: l = []
2:
for i in l:
print i
你可以这样来定义一个宏:
In [4]: macro print_l 2
Macro `print_l` created. To execute, type its name (without quotes).
Macro contents:
for i in l:
print i
运行宏:
In [5]: print_l
Out[5]: Executing Macro...
在这里,列表l是空的,所以没有东西被输出。但这其实是一个很强大的功能,我们可以赋予列表l某些实际值,再次运行宏就会看到不同的结果:
In [6]: l = range(5)
In [7]: print_l
Out[7]: Executing Macro...
0
1
2
3
4
当运行一个宏时就好象你重新输入了一遍包含在宏print_1中的代码。它还可以使用新定义的变量l。由于Python语法中没有宏结构(也许永远也不会有),在一个交互式shell中它更显得是一个有用的特性。
环境(Profiles)
就象早前提到的那样,IPython安装了多个配置文件用于不同的环境。配置文件的命名规则是ipythonrc-。要使用特定的配置启动IPython,需要这样:
ipython -p
一 个创建你自己环境的方法是在$HOME/.ipython目录下创建一个IPython配置文件,名字就叫做ipythonrc_,这里是你想要的环境的名字。如果你同时进行好几个项目,而这些项目又用到互不相同的特殊的库,这时候每个项目都有自己的环境就很有用 了。你可以为每个项目建立一个配置文件,然后在每个配置文件中import该项目中经常用到的模块。
更多精彩
赞助商链接