任何方式来清除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.system
或os.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命令提示符。
-
input
python
并点击回车键,将windows命令提示符变成python idle(确保安装了python)。 -
input
quit()
并回车,将其变回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脚本…