Python Tk打开窗口问题/错误

Python Tk打开窗口问题/错误,python,tkinter,Python,Tkinter,如果我在解释器中键入以下内容,它会像一个符咒一样工作: from Tkinter import Tk from tkFileDialog import askopenfilename Tk().withdraw() fh = open(askopenfilename(), 'r') 但是,如果我使用完全相同的命令编写/保存/运行脚本,尽管它可以工作(有点像预期的那样),但“打开”窗口将变为空白,并保持在屏幕上(打开所选文件后),并保持在所有内容的顶部 因此,我需要再次单击Python图标以

如果我在解释器中键入以下内容,它会像一个符咒一样工作:

from Tkinter import Tk
from tkFileDialog import askopenfilename

Tk().withdraw()
fh = open(askopenfilename(), 'r') 
但是,如果我使用完全相同的命令编写/保存/运行脚本,尽管它可以工作(有点像预期的那样),但“打开”窗口将变为空白,并保持在屏幕上(打开所选文件后),并保持在所有内容的顶部

因此,我需要再次单击Python图标以关闭窗口。有一次,这种情况停止了,但当我在没有
Tk().draw()
命令的情况下运行一次脚本时,问题再次出现


我在运行OSX小牛队。如果没有办法修复此错误,那么Python中是否有任何命令可以关闭此窗口?

请参阅此问题的公认答案。通常需要调用
Tk.mainloop()
来启动Tk的事件循环处理。但是,当您在交互式解释器中运行时,Python会为您调用Tk事件处理器,否则您将无法在交互式解释器中轻松使用Tkinter。

我也遇到了同样的问题。它实际上是在我想办法摆脱一个恼人的警告时开始的。见下文。我尝试了建议的解决方案,开始体验你描述的行为。我通过在terminal中输入
defaults write org.python.python applepersistenceignoregreat YES
取消了命令的绑定。这似乎不是最好的解决方案,但确实有效。