在 Python 中清除控制台

Rayven Esplanada 2023年1月30日
  1. 在 Python 中使用 os 模块清除解释器控制台
  2. 在 Python 中打印多行新行来清除解释器控制台
在 Python 中清除控制台

本教程将演示如何使用 Python 代码清除解释器控制台。

在 Python 中使用 os 模块清除解释器控制台

os 模块提供了使用控制操作系统的工具清除控制台的解决方案,并包含可以编写控制台命令的函数。

os 模块有一个函数 system(),它可以接受一个字符串参数,并将该字符串处理成一个控制台命令进入本地机器的解释器。

既然目的是清除控制台,那么作为参数传递的字符串应该是 clsclear,这取决于机器运行在什么操作系统上(Windows 和 DOS 为 cls,Linux、OSX 和 POSIX 机器为 clear)。

import os


def clearConsole():
    command = "clear"
    if os.name in ("nt", "dos"):  # If Machine is running on Windows, use cls
        command = "cls"
    os.system(command)


clearConsole()

让这个函数更简洁的方法是使用三元运算符,并声明一个 lambda 函数

import os


def clearConsole():
    return os.system("cls" if os.name in ("nt", "dos") else "clear")


clearConsole()

这两种解决方案都会清除运行 Python 代码的控制台实例。

在 Python 中打印多行新行来清除解释器控制台

这是一种比较粗暴的清除控制台的方法,但同样有效。声明一个将打印出个换行符(\n)的函数,这是一种模拟清除控制台的方法。

再次使用 lambda 函数来缩短代码,并将新行符号\n 乘以你希望控制台屏幕上升的行数。在这个例子中,我们将它乘以 150

def clearConsole():
    return print("\n" * 150)


clearConsole()

输出将如下所示:













localhost:~ user$ 

这个方案并不是最理想的,但它确实清除了控制台的内容。

总之,使用 os 模块的 system() 方法,可以通过传递 clear 命令作为参数,在 Python 代码中清除控制台,这取决于机器运行在什么操作系统上。另一种解决方案是在 Python 内部打印多个换行符来模拟控制台的 clear 命令,这不是最好的解决方案,但可以完成工作。

Rayven Esplanada avatar Rayven Esplanada avatar

Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.

LinkedIn