我更改代码时ipython笔记本没有更新

问题描述 投票:8回答:2

所以,我使用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

关于为什么会发生这种情况的任何想法?

ipython ipython-notebook jupyter jupyter-notebook
2个回答
0
投票

正如Thomas K所说,你可能正在对未导入的外部文件进行更改。在这种情况下,ipython笔记本中有一个非常有用的命令,称为autoreaload。使用autoreaload,无论何时修改外部文件,您都不必再次导入它,因为扩展程序会为您处理。有关更多信息,请查看:ipython autoreload


0
投票

我有时会遇到同样的问题。我认为它与内存有关 - 如果我有一堆数据帧挂在它周围似乎会导致问题。如果我使用Kernel> Restart选项重启内核,问题就会消失。

© www.soinside.com 2019 - 2024. All rights reserved.