【发布时间】:2015-05-24 08:12:14
【问题描述】:
我使用 Windows 7、Python 2.7.9 以及最新版本的 IPython 3.1。
我在 IPython Notebook 中运行 %python 并运行单元格,而不是返回 Python 版本,它没有运行并跳转到新行并打印 In [*] 而不是行号。现在 ipython 中没有运行任何行,当我尝试运行单元格值时,所有内容都会被忽略。
有人知道发生了什么吗?
【问题讨论】:
我使用 Windows 7、Python 2.7.9 以及最新版本的 IPython 3.1。
我在 IPython Notebook 中运行 %python 并运行单元格,而不是返回 Python 版本,它没有运行并跳转到新行并打印 In [*] 而不是行号。现在 ipython 中没有运行任何行,当我尝试运行单元格值时,所有内容都会被忽略。
有人知道发生了什么吗?
【问题讨论】:
内核正忙。转到菜单Kernel 并单击Interrupt。如果这不起作用,请单击Restart。您需要进入一个新单元格并按Shift + Enter 看看它是否有效。
【讨论】:
input 或其他方式显示“文本输入窗口”?
导致内核繁忙的问题可能是特定的代码行。如果是这种情况,您的计算机可能只需要时间来完成该线路。
如 Mike Muller 所述,要找出哪一行或哪一行花费了这么长时间,您需要重新启动程序或中断内核。然后仔细地一次运行一行,直到到达带有星号的第一行。
如果您不重新启动或中断繁忙的程序,您将无法分辨哪条线路是问题线路,哪条线路不是,因为它只会在处理该问题线路时保持忙碌状态。它会继续在每一行上给你一个星号,直到它完成运行那一行代码,即使你从头开始。这非常令人困惑,因为已经运行并产生输出的行在第二遍运行时会突然失去其输出。同样令人困惑的是,您可以在内核忙碌时对代码进行更改,但在它再次空闲之前您无法获得任何新的输出。
您的代码不一定是错误的。您可能只是包含了一个耗时的命令。引导程序对我造成了这种影响。
如果您的代码是它需要的,那么实际上哪一行是问题行并不重要,您只需要给所有代码时间来运行即可。找出问题行的主要原因是某些行是可消耗的,或者您是否因其他原因得到星号并需要排除这一行。
如果您在互联网服务上编写的代码在您没有输入时超时,那么如果您只是等待,您的代码可能没有足够的时间完成运行。每隔几分钟滚动一次通常足以防止这些页面超时。
【讨论】:
为了解决这个问题,我必须停止我的防病毒程序。
【讨论】: