Python でコンソールをクリアする

Rayven Esplanada 2023年1月30日
  1. Python でインタープリタコンソールをクリアするために os モジュールを使用する
  2. Python で複数の新しい行を出力してインタプリタコンソールをクリアする
Python でコンソールをクリアする

このチュートリアルでは、Python のコードを使ってインタープリタコンソールをクリアする方法を説明します。

Python でインタープリタコンソールをクリアするために os モジュールを使用する

os モジュールは、オペレーティングシステムを制御するツールを使ってコンソールをクリアするためのソリューションを提供し、コンソールコマンドを書くことができる関数を含みます。

この関数は文字列のパラメータを受け取り、その文字列をローカルマシンのインタプリタへのコンソールコマンドに変換します。

目的はコンソールをクリアすることなので、パラメータとして渡される文字列は、マシンが動作しているオペレーティングシステムに応じて 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()

この関数をより簡潔にする方法は、三項演算子を使用してラムダ関数を宣言することです。

import os


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


clearConsole()

どちらの方法も、Python コードを実行するコンソールインスタンスをクリアします。

Python で複数の新しい行を出力してインタプリタコンソールをクリアする

これは、コンソールをクリアするためのよりブルートフォースなアプローチですが、同じくらい効果的です。複数の改行 (\n) を出力する関数を宣言してください。

再びラムダ関数を使ってコードを短くし、改行記号 \n をコンソール画面の行数に乗算します。この例では、150 を掛けてみましょう。

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


clearConsole()

出力は次のようになります。













localhost:~ user$ 

この方法は最適ではありませんが、コンソールの内容をクリアすることができます。

まとめると、os モジュールの system() メソッドを使用すると、マシンが実行している OS に応じて、パラメータとして clear コマンドを渡すことで Python コード内のコンソールをクリアすることができます。もう一つの解決策は、Python の中でコンソールのクリアコマンドをモックするために複数の改行を表示することですが、これは最良の解決策ではありませんが、仕事は完了します。

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