【发布时间】:2016-01-13 03:54:50
【问题描述】:
所以,我在使用 ipython 笔记本时遇到了一个奇怪的问题,不知道该怎么办。通常,当我运行一部分代码时,如果出现错误,我会追溯它,修复它,然后重新运行代码。我正在做类似的事情,但即使在对代码进行了更改之后,看起来也没有任何变化!
这里是示例...我使用的是 Python 3.5,所以 xrange 消失了。这会导致抛出错误:
XXXX
24 XXXX
25 XXXX
---> 26 for t in xrange(0,len(data),1):
27
28 XXXX
NameError: name 'xrange' is not defined
但在更改我的代码后(您可以在第 26 行的差异下方看到),弹出相同的错误!
XXXX
24 XXXX
25 XXXX
---> 26 for t in range(0,len(data),1):
27
28 XXX
NameError: name 'xrange' is not defined
关于为什么会发生这种情况的任何想法?
【问题讨论】:
-
你能分享一个minimal reproducible example吗?从您的错误描述中很难猜出发生了什么。
-
我猜您正在更改已导入的外部文件。导入的文件不会自动重新加载。您可以使用
importlib.reload(mymodule)显式重新加载它。这尤其吸引了习惯于使用 Matlab 的人,因此 IPython 有一个 autoreload extension,它会在导入的模块发生更改时尝试自动重新加载。 -
啊!谢谢@ThomasK,这最终奏效了! :) 只是更新导入文件的问题。谢谢!
-
我也有同样的问题!
标签: ipython ipython-notebook jupyter jupyter-notebook