以编程方式终止Python Shell(空闲)

以编程方式终止Python Shell(空闲),python,shell,python-idle,Python,Shell,Python Idle,我正在使用IDLE(Python 3.6 64位)。目前,我正在使用Tkinter创建GUI。我的代码中有一个按钮,用来终止程序。现在,它只关闭“tk”根窗口(使用root.destroy())。我希望它也关闭shell并返回到我可以编辑代码的地方(即返回空闲状态)。如何执行此操作?当您从空闲编辑器窗口运行代码时,从空闲运行的任何现有程序都将终止。除非您的代码以某种方式控制鼠标,否则您应该始终能够单击任何编辑器窗口或其任务栏图标(在Windows上),并开始编辑更多内容。示例:从空闲编辑器运行以

我正在使用IDLE(Python 3.6 64位)。目前,我正在使用Tkinter创建GUI。我的代码中有一个按钮,用来终止程序。现在,它只关闭“tk”根窗口(使用
root.destroy()
)。我希望它也关闭shell并返回到我可以编辑代码的地方(即返回空闲状态)。如何执行此操作?

当您从空闲编辑器窗口运行代码时,从空闲运行的任何现有程序都将终止。除非您的代码以某种方式控制鼠标,否则您应该始终能够单击任何编辑器窗口或其任务栏图标(在Windows上),并开始编辑更多内容。示例:从空闲编辑器运行以下命令

import tkinter as tk
root = tk.Tk()
#root.destroy()
显示tk窗口。单击编辑器窗口,删除“#”,然后再次运行。第一个tk窗口消失,Shell窗口中出现一个
>
提示符

从IDLE运行的python程序不能*关闭其父IDLE,就像在控制台中运行的python程序可以关闭父控制台一样

  • 我排除了诸如on*nix、获取父进程号和发出“kill”命令之类的内容

试试这个:@LouFranco这个问题是关于终止运行程序的进程(
raise SystemExit
和等效程序。SteMod询问的是关于终止另一个进程中的某些内容(空闲进程中的Shell),虽然这样做不是继续编辑的必要条件。我知道没有必要,但无论如何我都想这样做。好吧,那么基本上不可能以编程的方式来做吗?没有“非凡”的意思(例外),是的。