在 Python 中清除控制檯
本教程將演示如何使用 Python 程式碼清除直譯器控制檯。
在 Python 中使用 os
模組清除直譯器控制檯
os
模組提供了使用控制作業系統的工具清除控制檯的解決方案,幷包含可以編寫控制檯命令的函式。
os
模組有一個函式 system()
,它可以接受一個字串引數,並將該字串處理成一個控制檯命令進入本地機器的直譯器。
既然目的是清除控制檯,那麼作為引數傳遞的字串應該是 cls
或 clear
,這取決於機器執行在什麼作業系統上(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
clearConsole = lambda: os.system('cls' if os.name in ('nt', 'dos') else 'clear')
clearConsole()
這兩種解決方案都會清除執行 Python 程式碼的控制檯例項。
在 Python 中列印多行新行來清除直譯器控制檯
這是一種比較粗暴的清除控制檯的方法,但同樣有效。宣告一個將列印出個換行符(\n
)的函式,這是一種模擬清除控制檯的方法。
再次使用 lambda 函式來縮短程式碼,並將新行符號\n
乘以你希望控制檯螢幕上升的行數。在這個例子中,我們將它乘以 150
。
clearConsole = lambda: print('\n' * 150)
clearConsole()
輸出將如下所示:
localhost:~ user$
這個方案並不是最理想的,但它確實清除了控制檯的內容。
總之,使用 os
模組的 system()
方法,可以通過傳遞 clear 命令作為引數,在 Python 程式碼中清除控制檯,這取決於機器執行在什麼作業系統上。另一種解決方案是在 Python 內部列印多個換行符來模擬控制檯的 clear 命令,這不是最好的解決方案,但可以完成工作。
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