python - 如何使用键盘在 Spyder3 中手动中止 Python3 脚本

标签 python python-3.x spyder keyboardinterrupt

如何使用 Spyder 手动中止/停止(我称之为 KeyboardInterrupt)执行 Python3 脚本??

当我单击run filerun current cell 时,没有任何东西可以停止脚本的执行,直到它完成。

Python 3.7.0 64 位、Qt 5.9.6、PyQt5 5.9.2、Spyder 3.3.4、Anaconda 3 64 位、Windows 10 64 位

Ctrl + C 不起作用,Ctr+X 不起作用,IPython 控制台中的红色“停止当前命令”按钮不起作用。
我可以停止正在运行的脚本的唯一方法是通过菜单控制台 > 重新启动内核。

此示例代码表明 KeyboardInterrupt 在 Spyder 中不起作用, 在下面的 3 个部分中都没有。

@author: xynxnex'''

#%% 
def hello():
    print('Hello Spyder '+str(nr))
import time
nr = 0
while nr < 42:
    nr +=1
    hello()
    time.sleep(1)    

#%% loop in function
def hello(n):
    nr = 0
    while nr < n: #n is a local variable, thus not shown in Variable explorer
        nr +=1 #nr is a local variable, thus not shown in Variable explorer
        print('Hello Spyder '+str(nr))
        time.sleep(1)
    return n
import time
x = hello(42) #

#%% just a simple loop
import time
nr = 0
while nr < 42:
    nr +=1
    print('Hello Spyder '+str(nr))
    time.sleep(1)

没有错误,但是循环一直在执行直到结束。

最佳答案

Ctrl c(不是大写字母 c)为我产生了键盘中断。蜘蛛 3.3.6 Python 3.6.8 64 位 | Qt 5.9.6 | PyQt5 5.9.2 | Windows 10

#%% just a simple loop
    import time
    nr = 0
    while nr < 42:
        nr +=1
        print('Hello Spyder '+str(nr))
        time.sleep(1)

Hello Spyder 1
Hello Spyder 2
Traceback (most recent call last):

  File "<ipython-input-23-b2c4320912d9>", line 7, in <module>
    time.sleep(1)

KeyboardInterrupt

关于python - 如何使用键盘在 Spyder3 中手动中止 Python3 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57787852/

相关文章:

python - 如果没有 show() 方法,matplotlib 图形不会出现

python - conda 将 64 位 Windows 的 numpy 更新到 1.8.x

python - 压缩的头像图片在Python中变得“旋转”

python - 找不到 'stackless_installer_c4_win32' 的索引页(可能拼写错误?)

python - 打印给定月份和年份的天数 [Python]

python-3.x - 由于用户权限,TensorFlow 安装被拒绝

python-3.x - 在没有 nltk.download() 的情况下使用 nltk 访问 wordnet 文件

Python 日期格式 D M d H :i:s T Y

python - 使用 BeautifulSoup 提取数据

python - 如何使用 Anaconda (windows) 安装 Wxpython?