是否存在任何标准的“附带电池”方法来清除Python脚本中的终端屏幕,或者我必须去诅咒(库,而不是单词)?


当前回答

清除屏幕的方法可能有些俗气,但在我所知的任何平台上都适用,如下:

for i in xrange(0,100):
    print ""

其他回答

如果您使用的是Linux/UNIX系统,那么打印ANSI转义序列以清除屏幕就可以了。您还需要将光标移动到屏幕的顶部。这将在任何支持ANSI的终端上工作。

import sys
sys.stderr.write("\x1b[2J\x1b[H")

这将不能在Windows上工作,除非ANSI支持已启用。Windows可能有一个等效的控制序列,但我不知道。

只使用:

print("\033c")

这将清除终端窗口。

如果您希望在使用python shell时清除您的终端。然后,您可以执行以下操作清除屏幕

import os
os.system('clear')

您可以对terminfo数据库进行分解,但这样做的函数无论如何都是在curses中。

前段时间偶然发现的

def clearscreen(numlines=100):
  """Clear the console.
numlines is an optional argument used only as a fall-back.
"""
# Thanks to Steven D'Aprano, http://www.velocityreviews.com/forums

  if os.name == "posix":
    # Unix/Linux/MacOS/BSD/etc
    os.system('clear')
  elif os.name in ("nt", "dos", "ce"):
    # DOS/Windows
    os.system('CLS')
  else:
    # Fallback for other operating systems.
    print('\n' * numlines)

然后使用clearscreen()