大家好,小编来为大家解答以下问题,哪个快捷键能够中断python程序运行,python 如何中断循环程序,现在让我们一起来看看吧!
函数quit(),exit(),sys.exit()和os._exit()具有几乎相同的功能,都能引发SystemExit异常,Python解释器通过该异常退出执行且不打印堆栈回溯(不把异常打印出来)。
当运行Python程序时,正常都是从上到下执行脚本中所有代码,当python解释器执行到脚本的末端就会自动退出,但是有时我们可能需要调用内建函数显示退出程序如何用python画不同大小的满天星。
1.sys.exit(n) 退出程序引发SystemExit异常, 可以捕获异常执行些清理工作. n默认值为0, 表示正常退出. 其他都是非正常退出. 还可以sys.exit(“sorry, goodbye!”); 一般主程序中使用此退出.
2. os._exit(n), 直接退出, 不抛异常, 不执行相关清理工作. 常用在子进程的退出.
3. exit()/quit(), 跑出SystemExit异常. 一般在交互式shell中退出时使用.
在四个退出函数中,sys.exit()是最好的,因为在编程环境中不能使用exit()和quit()函数,而os._exit()只在需要立即退出这种情况下才会使用。
1. quit()
这个函数不能用在实际的代码编写环境中,只能用在编译器interpreter中。
它在后台引发SystemExit异常。 如果进行打印,它将显示一条消息:
# Python program to demonstrate quit()
for i in range(10):
# If the value of i becomes 5 then the program is forced to quit
if i == 5:
# prints the quit message
print(quit)
quit()
print(i)
期望的输出应该是这样的:
但是如果非要在python代码环境下搞。。。就是这样的
但是,如果把上述代码写到一个.py文件中,在命令行调用:
就对了,哈哈哈哈
2. exit()
就是quit()的同义表达,也是只能在解释器中使用,不能直接在代码中执行。类似于quit(),也会打印出一条信息。(确实很像,哈哈哈。)
3. sys.exit([arg])
不同于上面两个只能用在命令行中。sys.exit()只要引入了sys包,就可以直接在脚本代码中执行。arg参数一般是整数,0的话就表明"正常/成功终止"了。也可以是其他的类型的对象,比如字符串
import sys
sys.exit("Age less than 18")
可以看到,触发了 这个 SystemExit
异常
如果是执行一个.py文件(不是这种逐行执行的环境),直接在pycharm里运行的话。
import sys
sys.exit("反正我退出了")
4. os._exit(n)
Python中的os._exit()方法用于以指定状态退出进程,而无需调用清除处理程序,刷新stdio缓冲区等。
注意:此方法通常在os.fork()系统调用之后的子进程中使用。 退出该进程的标准方法是sys.exit(n)方法。
主要参考: