当按下一个按钮时,我想停止Python脚本的执行。以下是代码:
import turtle
from sys import exit
def stop_program():
print("exit function")
exit(0) #raise SystemExit(0) gives the same result
print("after the exit function")
# Create keyboard binding
turtle.listen()
turtle.onkey(stop_program, "q")
# Main function
while True:
# Code: everything you want
如果我按下“q”按钮(甚至多次),输出结果如下:
exit function
exit function
exit function
exit function
exit function
exit function
exit function
...
每次按下时,即每次按下一行。 这意味着
exit
仅适用于该函数,而不适用于整个程序。有什么建议吗?
turtle.bye
而不是你的stop_program
函数吗?https://docs.python.org/3.3/library/turtle.html?highlight=turtle#turtle.bye - Andrewwhile True:
下面写了什么吗?你有在任何地方使用except:\n
吗? - user2201041except:
(而不是except Exception
),它会解释为什么你没有完全退出。这真的很奇怪。 - user2201041