用Spyder 3.3无法在input()中捕获Ctrl+C

2024-07-08 10:07:52 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在行中捕获Ctrl+C并在用户输入程序时退出程序。我在ipython7.4.0上使用python3.7.3,在windows64位机器上使用python3.7.3,使用8gbram。在

最重要的是,当我在WindowsPowerShell上运行这个程序时,它是有效的,这只发生在spyder上。在

我试过使用线程、键盘中断等,但都没用。我也看到了很多关于这个的帖子,但没有一个是有用的。问题是每次python无法捕获Ctrl+C

while True:
    line = input()
    if ('line contains Ctrl+C')
        break
    print(line)

print("Exiting")

我希望在按Ctrl+C之后,程序将打印“Exiting”并停止执行。在


Tags: 用户程序机器trueline键盘线程帖子
1条回答
网友
1楼 · 发布于 2024-07-08 10:07:52

最主要的是当你按下Ctrl+C时会发生什么,它只是停止。也就是说,您可能可以排除KeyboardInterrupt。你试过这个吗?在

import sys

try:
    #Code Stuff Goes Here
except KeyboardInterrupt:
    print(Exiting...)
    sys.exit()

相关问题 更多 >

    热门问题