Python:脚本运行后退出IDLE



是否有可能在运行结束后从我的Python代码/脚本中退出Windows下的Python IDLE ?

我试过这样做:

import sys
sys.exit(0) # or exit(1)

不工作。可能只退出正在运行的python脚本的当前"进程"。谢谢大家

如果您可以从命令行运行IDLE(或编辑您的快捷方式),我在IDLE帮助中发现了这一点。

If IDLE is started with the -n command line switch it will run in a
single process and will not create the subprocess which runs the RPC
Python execution server.

似乎暗示脚本在 IDLE中运行。我做了一个快速的测试脚本,调用exit()会弹出一个要求终止程序的对话框。单击yes,脚本和IDLE都退出。

这正是您想要的。没有提示。

import os
os.system("taskkill /f /im pythonw.exe")

要从Python代码/脚本中退出Windows下的Python IDLE而不需要进一步提示,请尝试:

parent_pid = os.getppid()  # Get parent's process id
parent_process = None
for proc in psutil.process_iter(attrs=['pid']):  # Check all processes
    if proc.pid == parent_pid:  # Parent's Process class
        parent_process = proc
        break
if parent_process is not None:
    parent_process.kill()  # Kill the parent's process

这适用于IDLE, PyCharm甚至Windows中的命令行。

相关内容

  • 没有找到相关文章

最新更新