使用的Ipython版本:2.3.1
ipython的自动重新加载扩展并不适合我。我已经看到了这个question,并在我的ipython_config.py
中尝试了各种组合,包括:
c.InteractiveShellApp.extensions = ['autoreload']
c.InteractiveShellApp.exec_lines = ['%autoreload 2']
还尝试了一个新选项:
c.TerminalInteractiveShell.deep_reload = True
但似乎没有工作。我也尝试在ipython shell加载扩展:
In [7]: %load_ext autoreload
The autoreload extension is already loaded. To reload it, use:
%reload_ext autoreload
In [8]: %autoreload 2
所以,似乎扩展已经加载了。但是当我编辑并保存我的文件时,它没有被重新加载(返回我的测试函数的相同旧值)。关于可能出错的任何想法?
答案 0 :(得分:1)
在ipython 2.3.0
中确认这对我来说非常合适c = get_config()
c.InteractiveShellApp.exec_lines = ['%autoreload 2']
c.InteractiveShellApp.extensions = ['autoreload']
c.TerminalInteractiveShell.autoindent = False
尝试使用非常简单的测试:
test.py
def print_something():
print('thing')
IPython的
>>> import test
>>> test.print_something()
thing
>>> # change 'thing' -> 'other'
>>> test.print_something()
other