在Powershell/命令提示符中使用Ctrl-C时,Python无法退出,而是给出了一个"KeyboardInterrupt“字符串。
最近我重新安装了Windows10。在重新安装之前,按Ctrl-C可以退出python (3.5/2.7),没有输出。
有人知道为什么会发生这种情况吗?是否只是一个简单的设置?
我能想到的唯一区别是我现在使用的是python 3.6。Ctrl-D在Windows上的Ubuntu上的Bash中工作,而Ctrl-C在激活的anaconda python2环境中退出python时工作得很好。
发布于 2017-02-13 18:40:25
这是最近在Windows 10 Insider build 15002中出现的一个错误。
解决方法是将映射的键从Ctrl C更改为类似于Ctrl K的内容
如果您不熟悉如何做到这一点,您可以查看或stty -a
您可以在将Terminate映射为Ctrl +K的每个bash会话上运行此命令
stty intr \^k
作为临时解决方案,您可以将其包含在Bashrc中,以便在每个新会话上执行
此错误已在Github #1569上报告
发布于 2020-04-27 05:03:53
我在Windows10专业版18363和Python 3.8.1中遇到了这个问题。我正在运行一些python脚本,无法使用CTRL + C,但是CTRL + BREAK每次都有效Windows文档我是这么说的:
CTRL+C和CTRL+BREAK组合键由控制台进程进行特殊处理。默认情况下,当控制台窗口具有键盘焦点时,CTRL+C或CTRL+BREAK被视为信号(SIGINT或SIGBREAK),而不是键盘输入...
CTRL+BREAK始终被视为一个信号,但应用程序可以通过两种方式更改默认的CTRL+C行为,以防止调用处理程序函数:
因此,CTRL + C似乎是一个SIGINT,它的动作可以被你正在运行的程序修改。Windows上的Python似乎以这样一种方式编码
被处理为键盘输入,而不是我们期望的SIGINT。对我来说幸运的是我有CTRL + BREAK键盘上的按键,每次都有效。
对于那些没有BREAK在键盘上,您可以使用Windows on Screen虚拟键盘。
在虚拟键盘上,按ctrl + ScrLk这应该会杀死程序。
这个堆栈线程有一些其他方法可以尝试,如果在虚拟键盘上不工作。
发布于 2019-02-20 14:51:49
你可以输入
CTRL + Z,
然后按ENTER从powershell退出python。
Powershell屏幕截图
https://stackoverflow.com/questions/42039231
复制相似问题