我如何退出一个脚本早,像die()命令在PHP?


当前回答

提前终止Python脚本的一个简单方法是使用内置的quit()函数。不需要导入任何库,而且高效简单。

例子:

#do stuff
if this == that:
  quit()

其他回答

只要把quit()放在代码的末尾,就可以关闭一个python脚本。

另一种方法是:

raise SystemExit
from sys import exit
exit()

作为参数,您可以传递一个退出码,该退出码将返回给操作系统。默认值为0。

问题

在我的实践中,甚至有一种情况需要从其中一个进程中杀死整个多处理器应用程序。

如果您的应用程序使用唯一的主进程,那么以下函数可以很好地工作。但是在我的例子中,下列函数没有一个不能工作,因为应用程序还有许多其他活动进程。

辞职() 退出(0) os._exit (0) sys.exit (0) Os.kill (os.getppid(), 9) -其中os.getppid()是父进程的pid

最后一个进程杀死了主进程和它自己,但其余进程仍然存活。

解决方案

我不得不通过外部命令杀死它,最后使用pkill找到解决方案。

import os

# This can be called even in process worker and will kill
# whole application included correlated processes as well
os.system(f"pkill -f {os.path.basename(__file__)}")

提前终止Python脚本的一个简单方法是使用内置的quit()函数。不需要导入任何库,而且高效简单。

例子:

#do stuff
if this == that:
  quit()