任何方式来清除python的IDLE窗口?

我知道有一个关于python控制台的类似主题,但我不知道它们是否相同。 我尝试了系统(“清除”),并没有在这里工作。

如何清除python的IDLE窗口?

“cls”和“clear”是清除terminal的命令(即DOS提示符或terminal窗口)。 从你的截图中,你正在使用IDLE中的shell,这不会受到这种事情的影响。 不幸的是,我不认为有一种方法可以在IDLE中清除屏幕。 你可以做的最好的是滚动屏幕下来很多行,例如:

 print "\n" * 100 

虽然你可以把它放在一个函数中:

 def cls(): print "\n" * 100 

然后在需要时调用它作为cls()

os.system('clear')在linux上工作。 如果您正在运行Windows,请尝试使用os.system('CLS')

你需要像这样先导入os:

 import os 

ctrl + L清除Ubuntu Linux上的屏幕。

Issue 6143中可以find一个用于清除shell的扩展,作为“function请求”。 这个扩展包含在IdleX中 。

大多数答案出现在这里,清除DOS提示符屏幕清除命令。 这不是在这里问的问题。 在这里发布的其他答案是打印空白行以显示屏幕的清除效果。

这个问题最简单的答案是

没有一些外部模块的集成,不可能清除python IDLE shell。 如果你真的想得到一个空白的纯净的新鲜的壳,只需closures以前的shell并再次运行它

似乎没有办法清除IDLE'shell'缓冲区。

 >>> import os >>>def cls(): ... os.system("clear") ... >>>cls() 

这是完美的。 也不打印“0”。

在Python 2.4+中执行命令的方法是使用subprocess模块。 你可以像使用os.system一样使用它。

 import subprocess subprocess.call("clear") # linux/mac subprocess.call("cls", shell=True) # windows 

如果你在python控制台执行这个操作,你需要做一些事情来隐藏返回值(对于os.systemos.system ),比如把它赋值给一个variables:

 cls = subprocess.call("cls", shell=True) 

文件 – >新窗口

在新窗口中**

运行 – > Python Shell

这个方法的问题是它会清除你定义的所有东西,比如variables。

或者,您应该只使用命令提示符。

打开命令提示符

键入“cd c:\ python27”

键入“python example.py”,你不得不在交互模式下使用IDLE来编辑它。 如果你在Python shell,文件 – >新窗口。

请注意,example.py需要和C:\ python27在同一个目录下,或者你安装了python的目录。

然后从这里,你只需按下键盘上的向上箭头键。 你只需编辑example.py,使用CTRL + S,然后回到命令提示符下,按上箭头键,回车。

如果命令提示符太拥挤,只需键入“clr”

“clr”命令只适用于命令提示符,它不适用于IDLE。

您可以创build一个AutoHotKey脚本。

要将ctrl-r设置为热键来清除shell:

 ^r::SendInput print '\n' * 50 {Enter} 

只要安装AutoHotKey,把上面的文件称为idle_clear.ahk,运行该文件,你的热键是激活的。

如果要清除shell缓冲区,请在IDLE中进入shell> restart shell。 你的问题有点含糊。 你想清除shell缓冲区还是你想调用OS命令?

在Windows上执行的最好方法是使用命令提示符“cmd”并访问python目录,可以在开始菜单中find命令提示符> run> cmd

 C:\>cd Python27 C:\Python27>python.exe Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license()" for more information. >>>import os >>>os.system('cls') #This will clear the screen and return the value 0 

这些解决scheme在Windows 7和IDLE中都不适用于我。 使用PowerShell,在其中运行Python并退出以在PowerShell中调用“cls”来清除窗口。

CONS:假设Python已经在PATHvariables中。 另外,这也会清除你的Pythonvariables(尽pipe重新启动shell也是如此)。

优点:保留你所做的任何窗口定制(颜色,字体大小)。

您的屏幕截图显示您正在使用IDLE。 cls / clear不会为你工作。

正如mark.ribau所说,似乎没有办法清空闲置的文本部件。 你应该编辑EditorWindow.py模块,并在EditorWindow类中添加一个方法和一个菜单项,它的function如下:

 self.text.tag_remove("sel", "1.0", "end") self.text.delete("1.0", "end") 

也许还有一些我不知道的标签pipe理。

这在Windows中适用于我:

print chr(12)

用这个

 for num in range(1,100): print("\n") 

没有任何外部图书馆似乎是不可能的。

另一种方法,如果您使用的是Windows,并且不想在每次要清除它时打开和closuresshell,则使用Windows命令提示符。

  • inputpython并点击回车键,将windows命令提示符变成python idle(确保安装了python)。

  • inputquit()并回车,将其变回windows命令提示符。

  • 键入cls并回车,清除命令提示符/ windows shell。

 from subprocess import call as c def cls(): c("cls",shell=True) print([x for x in range(10000)]) cls() 

每当你想清除控制台调用函数cls,但是请注意,只有当你使用cmd提示符运行Python脚本时,这个函数才会清除Windows中的屏幕,如果你使用IDLE运行,它将不会清除缓冲区。

我喜欢用:

 import os clear = lambda : os.system('cls') # or clear for Linux clear() 

没有必要写你自己的function来做到这一点! Python有一个内置的清除function。

在命令提示符下键入以下内容:

 shell.clear() 

如果你正在使用terminal(我使用的是Ubuntu),那么只需使用键盘上的CTRL + l组合清除python脚本,即使它清除terminal脚本…