logo

Python で警告を抑制する方法

導入:

この記事では、Python で警告を抑制する方法について説明します。 Python でコーディングしているプログラマーであれば、いつでも警告に直面する必要があります。 Python の警告は主に画面にメッセージを表示します。メッセージにはエラーや警告は含まれません。コンパイラは、コードの実行中にプログラム内のイベントについてユーザーに警告する場合があります。インデントの問題かコンパイラのバージョンの問題である可能性があります。警告メッセージは通常、例外を発生させたりプログラムを終了したりする必要がないことをユーザーに通知する必要がある場合に送信されます。

たとえば、Python の最新バージョンでは基本的に許可されていない機能を Python で使用すると、警告メッセージがディスプレイに表示されます。これはコンパイル時に発生する警告の一種です。

Python の警告について説明します。

警告は、必要のない例外があることを開発者に警告するものです。主に、キーワード、関数、クラスなどによって警告が発生します。警告は、エラーとは異なるプログラム内の警告など、特定のプログラミング要素が使用されたときに表示されます。 Python で問題が発生すると、プログラムは即座に終了します。しかし、警告はそれほど重要ではありません。警告にはいくつかのメッセージが表示されますが、プログラムは動作します。

例 1:

ここでは Python の警告の例を示します。以下の例では warn() 関数を使用して、Python でエラーを表示しました。警告メッセージはユーザーにメッセージを表示するだけであり、送信された警告メッセージに関係なくプログラムは続行できます。プログラムコードは以下のようになります -

Java ファイルを開く
 import warnings # import the warning module print('Hello Coders from javaTpoint') # Print the given message warnings.warn('The Warning Message is: This is a warning message in python') # Display the warning message using warn() function 

出力:

次に、上記のコードを Python でコンパイルし、コンパイルが成功したら実行します。次に、出力は以下のようになります -

 Hello Coders from javaTpoint :6: UserWarning: The Warning Message is: This is a warning message in python 

例 2:

ここでは Python の警告の例を示します。以下の例では warn() 関数を使用して、Python でエラーを表示しました。プログラムコードは以下のようになります -

 import warnings # import the warning module print('Hello Coders') # Print the given message warnings.warn('The Warning Message is: 10') # Display the warning message using warn() function print('Hello Coders!!') 

出力:

次に、上記のコードを Python でコンパイルし、コンパイルが成功したら実行します。次に、出力は以下のようになります -

 Hello Coders :9: UserWarning: The Warning Message is: 10 Hello Coders!! 

Python の警告にはどのような種類がありますか?

Python にはさまざまな種類の警告があります。タイプについては以下で説明します。

1. 将来の警告:

Futurewarning は Python の Warning の一種です。これらのレポートが Python スクリプトのエンド ユーザーを対象とする場合の、非推奨の機能に関する警告の基本カテゴリ。

2. バイト警告:

Byteswarning は、Python の警告の一種です。この警告は主にバイトとバイト配列に基づいています。

3. 非推奨の警告:

Deprecationwarning は、Python の別の種類の警告です。この警告は主に、Python 開発者が行う非推奨に基づいています。

4. ランタイム警告:

Runtimewarning は、Python の別の種類の警告です。この警告は主にランタイムの機能に基づいています。

5. リソース警告:

Resourcewarning は、Python で発生する別の種類の警告です。この警告は主にリソースの使用状況に基づいています。

6. 構文警告:

Syntaxwarning は Python で発生する警告です。この警告は主に構文の特徴に基づいています。構文の誤用がある場合は、警告が発生する必要があります。

7. ユーザー警告:

10 100万

UserWarning は主にユーザーによって行われ、Python の warn() 関数を使用して出力されます。

8. 輸入に関する警告:

Importwarning は、Python で発生する別の種類の警告です。この警告は主に、Python でのモジュールのインポートに基づいています。

9.非推奨保留中の警告:

Javaの基本

PendingDeprecationwarning は、Python で発生する別の種類の警告です。この警告は主に、非推奨となる機能に基づいています。

10.Unicode警告:

Unicodewarning は、Python で発生する別の種類の警告です。この警告は主に Unicode に基づいています。

11. 警告:

警告は、Python で発生する警告カテゴリの主要なクラスです。この警告は例外のサブクラスです。

Python で警告を抑制するにはどうすればよいですか?

Python で警告を抑制するには、以下に示す 2 つの方法があります。

  1. コードからの警告を無効にする
  2. コマンドによる警告の無効化

以下、これらのトピックについて説明します。

1. コードからの警告を無効にする:

警告はアカウントの通知をオフにするために使用され、すべての警告は無視されるようにフィルターされます。したがって、出力には警告は表示されません。まず、実行するために警告を必要としないコードを作成し、次に実行する必要があるコードを作成します。

例 1:

次のコードでは警告が無効になっていません。コードは Python プログラミング言語で書かれており、警告メッセージを表示するために warn() 関数を使用しました -

 import warnings # Import the warning module print('Hello Coders from JavaTpoint') # Print the given message warnings.warn('The Error is: A warning is occured in this code') # Print the warning message print('Hello Coders!') 

出力:

次に、上記のコードを Python でコンパイルし、コンパイルが成功したら実行します。次に、出力は以下のようになります -

 Hello Coders from JavaTpoint :6: UserWarning: The Error is: A warning is occured in this code Hello Coders! 

上記のコードでは、出力に自己生成された警告メッセージが表示されます。このプログラムでは警告が有効になっているため、ここで警告メッセージが生成されます。次に、このプログラムの警告をオフにして、プログラムが警告メッセージを表示するかどうかを確認します。

のインスタンス

例 2:

ここでは、次のコードで警告がオフになっています。コードは Python で書かれており、warn() 関数を使用して警告メッセージを表示しました。

 import warnings # Import the warning module print('Hello Coders from JavaTpoint') # Print the given message warnings.filterwarnings('ignore') # Set the warning as ignored warnings.warn('The Error is: A warning is occured in this code') # Does not print the warning message due to disabled warnings print('Hello Coders!') 

出力:

2 番目のステートメントは filterwarnings を呼び出し、引数として無視を渡すため、コードの出力は警告をオーバーライドします。これにより、コードが無視されたときに発生する警告が除外されます。したがって、次のセクションの警告は表示されません。次に、上記のコードを Python でコンパイルし、コンパイルが成功したら実行します。次に、出力は以下のようになります -

 Hello Coders from JavaTpoint Hello Coders! 

2. コマンドを使用して警告を無効にする:

Python で警告を抑制するもう 1 つの方法は、コマンドを使用して警告をオフにすることです。コンテンツを変更して履歴を組み込むことができない場合は、警告を外部化できます。このプロセスでは、ignore 引数を Python コンパイラの -W スイッチに渡します。コードは以下に示されています -

 -W arg : warning control; arg is action:message:category:module:lineno also PYTHONWARNINGS=arg 

-W の引数を無視すると、最初のコードが「無視」され、警告がオフになります。コードはコマンドラインで実行されます。したがって、コードは以下の部分に示されています -

 py -W 'ignore' test.py 

出力:

次に、上記のコードを Python でコンパイルし、コンパイルが成功したら実行します。次に、出力は以下のようになります -

 C:usersDesktop>py -W'ignore' test.py Hello Coders from JavaTpoint Hello Coders! 

ファイル実行時には警告を無視できます。

Python で特定の警告を抑制するにはどうすればよいですか?

Python ですべての警告ではなく特定の警告を抑制したい場合は、filterwarnings 関数 () を追加できます。たとえば、以下のコードでは、コードが非公開であるため、テキストが「許可が拒否されました」と一致するメッセージを保持します。ただし、具体的な警告を示したいと思います。このコードはその完璧な例です -

 import warnings # Import the warning module warnings.filterwarnings('ignore', message='not allowed') # Set the warning as ignored print('Hello Coders!') # Print the given message warnings.warn('not allowed') warnings.warn('The Warning Message is: This is the warning message in here') # Display the warning message 

出力:

次に、上記のコードを Python でコンパイルし、コンパイルが成功したら実行します。次に、出力は以下のようになります -

 Hello Coders! :5: UserWarning: The Warning Message is: This is the warning message in here 

結論:

そこで、この記事では、Python で警告を抑制する方法について説明します。警告は主にメッセージを表示します。ただし、警告があるため、プログラムにエラーは発生しません。ここでは、Python で警告を抑制するための 2 種類のテクニックを共有しました。ここでは、これらのテクニックのコードも共有します。