这个问题不是关于一个特定的错误——这个错误是因为我错误地使用了 matplotlib
的 tight_layout
。
我想知道为什么 iPython 正在解释我注释掉的一行代码——或者更确切地说,这在什么情况下会发生(即,我需要重新启动内核,或其他)。
尽管我重新执行了相关导入,但错误似乎仍然存在。
代码:
import forecasting_report.analyze as fcst_rprt
analysis = fcst_rprt.ForecastingReport()
analysis.analyze()
results = analysis.user_dict
错误说:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-6-a62e6e8717be> in <module>()
1 analysis = fcst_rprt.ForecastingReport()
----> 2 analysis.analyze()
3 results = analysis.user_dict
/Users/[...]/ForecastingReport/forecasting_report/analyze.py in analyze(self)
44 self.breakdown = help.breakdown(self.user_dict)
---> 45 #plots.plot_breakdown(self.breakdown, self.path)
46
47 def write_results(self):
<Error Stack continues>
注意:
一个完美的答案是:“这不是它的工作方式”。可以肯定的是,我没有尝试在命令行中重现此错误,所以这可能是我对 Python 解释器的无知。
最佳答案
Python 只会初始化导入的模块一次,进一步调用 import
将无效,即使模块在读取后已被修改。
要重新加载模块,请使用内置函数 reload在已经导入的模块对象上,例如:
import mymodule
# ...later...
reload(mymodule)
关于python - 为什么 iPython 笔记本解释注释掉的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16363252/