这个问题与特定错误无关 - 错误是因为我错误地使用了matplotlib
的{{1}}。
我想知道为什么iPython正在解释我已经注释掉的一行代码 - 或者更确切地说,在什么情况下会发生这种情况(即,我需要重新启动内核,或者其他)。
尽管我重新执行了相关的导入,但错误似乎仍然存在。
代码:
tight_layout
错误说:
import forecasting_report.analyze as fcst_rprt
analysis = fcst_rprt.ForecastingReport()
analysis.analyze()
results = analysis.user_dict
注意:
一个完美的答案是:“这不是它的工作方式”。可以肯定的是,我没有尝试在命令行重现这个错误,所以它可能是我对Python解释器的无知。
答案 0 :(得分:1)
Python只会初始化导入的模块一次,对import
的进一步调用将无效,即使模块自读取后已被修改。
要重新加载模块,请在已导入的模块对象上使用内置函数reload,例如:
import mymodule
# ...later...
reload(mymodule)
答案 1 :(得分:1)
尝试
%load_ext autoreload
%autoreload 2
应该与ipython终端一起使用,我不确定它是否适用于ipython笔记本。您可以通过autoreload?
和以下帖子查看帮助:Autoreload of modules in IPython