我知道有关python控制台的类似主题,但我不知道它们是否相同。我尝试了系统(“清除”),它在这里不起作用。
如何清除python的IDLE窗口?
“cls”和“clear”是清除终端的命令(即DOS提示符或终端窗口)。从你的截图中,你在IDLE中使用shell,它不会受到这些事情的影响。不幸的是,我认为没有办法在IDLE中清除屏幕。您可以做的最好的事情是将屏幕向下滚动很多行,例如:
print "\n" * 100
虽然你可以把它放在一个函数中:
def cls(): print "\n" * 100
然后在需要时将其称为cls()
MAC OS X的“command + L”。
Ubuntu的“控制+ L”
清除交互式会话中的最后一行
在Windows上执行此操作的最佳方法是使用命令提示符'cmd'并访问python目录,可在开始菜单> 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
你可以制作一个AutoHotKey脚本。
要将ctrl-r设置为热键以清除shell:
^r::SendInput print '\n' * 50 {Enter}
只需安装AutoHotKey,将上面的内容放在名为idle_clear.ahk的文件中,运行该文件,并且您的热键处于活动状态。
我喜欢用:
import os
clear = lambda : os.system('cls') # or clear for Linux
clear()
在Windows 7和IDLE中,这些解决方案都不适用于我。使用PowerShell,在其中运行Python并退出以在PowerShell中调用“cls”来清除窗口。
缺点:假设Python已经在PATH变量中。此外,这确实清除了您的Python变量(尽管重启shell也是如此)。
PROS:保留您所做的任何窗口自定义(颜色,字体大小)。
我建议你使用Thonny IDE for Python。它的shell具有“Clear Shell”选项,您还可以跟踪在单独列表中创建的变量。即使与现代IDE相比,它的调试也非常好。您还可以在python文件中编写代码以及在同一位置访问shell。
而且轻巧!
用这个
for num in range(1,100):
print("\n")
没有任何外部库,似乎不可能做到这一点。
如果您使用的是另一种方法,并且每次要清除它时都不想打开和关闭shell,请使用Windows命令提示符。
python
并按Enter键将Windows命令提示符转为python idle(确保安装了python)。quit()
并按Enter键将其返回到Windows命令提示符。cls
并按Enter键以清除命令提示符/ windows shell。正如mark.ribau所说,似乎没有办法在空闲时清除Text小部件。应该编辑EditorWindow.py
模块并在EditorWindow类中添加一个方法和一个菜单项,它们执行以下操作:
self.text.tag_remove("sel", "1.0", "end")
self.text.delete("1.0", "end")
或许还有一些我不知道的标签管理。
如果要清除shell缓冲区,请转到shell>在IDLE中重新启动shell。你的问题有点模糊。您要清除shell缓冲区还是要调用OS命令?
os.system('clear')
适用于Linux。如果您正在运行Windows,请尝试使用os.system('CLS')
。
你需要先导入os,如下所示:
import os
这适用于Windows:
print chr(12)
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运行,它将不会清除缓冲区。
您的屏幕截图显示您正在使用IDLE。 cls
/ clear
不适合你。
如果你正在使用终端(我正在使用ubuntu),那么只需使用键盘上的CTRL + l组合清除python脚本,即使它清除了终端脚本......
没有必要编写自己的函数来执行此操作! Python具有内置的清晰功能。
在命令提示符中键入以下内容:
shell.clear()
如果在Windows上使用IPython
,那就是
cls()
ctrl + L清除Ubuntu Linux上的屏幕。
这里出现的大多数答案都是清除DOS提示屏幕清除命令。这不是问题。这里发布的另一个答案是打印空白行以显示屏幕的清除效果。
这个问题最简单的答案是
没有一些外部模块集成,就无法清除python IDLE shell。如果你真的想要获得一个空白的纯新shell,只需关闭前一个shell并再次运行它
>>> import os
>>>def cls():
... os.system("clear")
...
>>>cls()
这样做很完美。也没有打印'0'。
似乎没有办法清除IDLE'hell'缓冲区。
在Python 2.4+中执行命令的方法是使用subprocess模块。您可以像使用os.system
一样使用它。
import subprocess
subprocess.call("clear") # linux/mac
subprocess.call("cls", shell=True) # windows
如果你在python控制台中执行它,你需要做一些事情来隐藏返回值(对于os.system
或subprocess.call
),比如将它分配给变量:
cls = subprocess.call("cls", shell=True)
文件 - >新窗口
在新窗口中**
运行 - > Python Shell
此方法的问题在于它将清除您定义的所有内容,例如变量。
或者,您应该只使用命令提示符。
打开命令提示符
输入“cd c:\ python27”
输入“python example.py”,当它不处于交互模式时,你必须使用IDLE编辑它。如果你在python shell中,文件 - >新窗口。
请注意,example.py需要与C:\ python27位于同一目录中,或者安装python的目录。
然后从这里按下键盘上的向上箭头键。你只需编辑example.py,使用CTRL + S,然后返回命令提示符,按向上箭头键,按回车键。
如果命令提示符过于拥挤,只需键入“clr”
“clr”命令仅适用于命令提示符,它不适用于IDLE。