Python 3.x 为什么Python3上的pdb会忽略我的CTRL+;只显示“C”--键盘中断--”;

Python 3.x 为什么Python3上的pdb会忽略我的CTRL+;只显示“C”--键盘中断--”;,python-3.x,Python 3.x,在Python2中的pdb下,我可以按住CTRL-C键并退出Python程序 在Python3.6下,我不这样做,只显示--KeyboardInterrupt--并忽略我。为了退出,我需要按CTRL-D键,但如果我“执行了太多操作”,这也会终止bash会话 我可以恢复CTRL+C行为吗 Python3.6,macOS Sierra。我仍然保持相同的行为。也许这是我的环境中的一个小故障,但除此之外,我看不到显式忽略用户使用CTRL+C终止程序的请求的好处 然而,我发现点击“q”会触发pdb退出,

在Python2中的
pdb
下,我可以按住CTRL-C键并退出Python程序

在Python3.6下,我不这样做,只显示--KeyboardInterrupt--并忽略我。为了退出,我需要按CTRL-D键,但如果我“执行了太多操作”,这也会终止bash会话

我可以恢复CTRL+C行为吗


Python3.6,macOS Sierra。

我仍然保持相同的行为。也许这是我的环境中的一个小故障,但除此之外,我看不到显式忽略用户使用CTRL+C终止程序的请求的好处

然而,我发现点击“q”会触发pdb退出,而pdb退出的最终结果通常是预期的结果,即程序终止。而且,与CTRL+D不同,它也没有关闭启动bash会话的风险


编辑-这是我目前正在研究的技巧,希望我能提供一个解决方案。作为一个例子,您可以在
.bashrc
中设置
set-o ignoreof
,这样Ctrl-D就不会退出您的bash/ssh会话。在我这方面,它似乎工作正常,所以我处于死胡同,抱歉。你能检查一下文件吗?我认为将
nosigint
变量设置为True可能不允许pdb干扰
SIGINT
处理程序。