使用ctrl C杀死Python程序

时间:2015-09-29 10:13:40

标签: python keyboard ctrl easygui

我在学校有一项任务,我无法解决,而且我仍然坚持。

任务是建立一个程序,在EasyGUI消息框中无限地喷出随机数(是的,我知道EasyGUI是旧的xD)

这是我的源代码:

导入easygui

while True:
    easygui.msgbox(random.randint(-100, 100))

问题在于,当我运行这个时,我无法摆脱它。我应该被允许使用ctrl + C,但这不起作用。我错过了什么吗?

提前谢谢!

2 个答案:

答案 0 :(得分:1)

你的问题是你在使用easygui时不能使用ctrl-c,你可以在使用空闲时使用ctrl-c,例如你可以这样做

for i in range(1, 10000000000000000000000000000000000000000000000):
    print(i)

这将起作用,它不会在easygui上,因为我逐个喷出帧。慢下来

答案 1 :(得分:0)

使用信号处理程序对于easygui来说似乎不是一项微不足道的任务,如果你可以在按下x时退出,你可以执行以下操作:

while True:
    e = easygui.msgbox(random.randint(-100, 100))
    if e is None:
        break

e将是字符串"OK",如果您按下确定,或者如果按下x则为无,这可能是退出和结束循环的最简单方法。