是否存在可以在Ipython或Python Interpreter中使用的别名(类似BASH)的机制?
例如,如果我发现自己经常做类似的事情:
var = urllib2.urlopen('http://programmers.stackexchange.com')
但我不想继续输入那些字符串。
除了为脚本编写脚本之外,是否存在缩短请求的任何方法(持续出口之间)?
答案 0 :(得分:1)
不,但在你的翻译中,请写下:
def pse_url():
global var
var = urllib2.urlopen('http://programmers.stackexchange.com')
然后,只要您需要影响变量,请写pse_url()
。
不使用全局变量会更清晰:
var = pse_url()
如果您有许多此类实用程序,请将它们放在您自己的模块中,并在启动REPL时加载它们一次。
答案 1 :(得分:1)
我的猜测是这样的一行表达式,你可以创建lambdas函数(和更强大的函数建议 @coredump ),见下面的代码:
se_open = (lambda: urllib2.urlopen('http://programmers.stackexchange.com'))
so_open = (lambda: urllib2.urlopen('http://programmers.stackexchange.com'))
知道是否必须创建新的var,只需运行命令:
var_se = se_open()
var_so = so_open()
此外,您可以创建包含所有快捷方式的脚本,并通过命令使用导入的脚本启动python:
$ python -i script.py
script.py
中定义的所有功能都可以在您的REPL中使用。