python 无法使用Ctrl |
您所在的位置:网站首页 › 终止正在运行的程序怎么办 › python 无法使用Ctrl |
文章目录
无法使用Ctrl-C终止Python脚本
无法使用Ctrl-C终止Python脚本
写了一个死循环,类似: def function(): while True: #my code程序运行后想用ctrl+c按键停止程序,可是终止不了。以下为解决办法: 第一步:加入sys,signal模块,定义一个quit函数 import sys import signal def quit(signum, frame): print '' print 'stop fusion' sys.exit()第二步:在funtion函数中加入两行代码: def funtion(): signal.signal(signal.SIGINT, quit) signal.signal(signal.SIGTERM, quit) while True: #my code另外编写代码 while True一定要有break语句 如下,如果 我们注释调 异常中的 break,我们ctrl+c 就不起作用,因为键盘KeyboardInterrupt异常在while循环中捕获,代码依旧循环。 def print_hi(name): print("Hi, {0}".format(name)) while True: try: print("xxx") time.sleep(30) except: print traceback.format_exc() #break if __name__ == '__main__': print_hi('中国')我们解除调break 注释,发现ctrl +c 立马退出了程序。 在python中中断/中断time.sleep() While 1: time.sleep(60)在上面的代码中,当控件进入time.sleep函数时,需要经过整整60秒才能处理CTRL C 。 如上面描述,我们用try 捕获 KeyboardInterrupt 中断,然后直接break,就可以立即处理停止程序。 def print_hi(name): print("Hi, {0}".format(name)) while True: try: print("xxx") time.sleep(60) except: print traceback.format_exc() break if __name__ == '__main__': print_hi('中国') |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |