ホームページ >バックエンド開発 >Python チュートリアル >Pythonの例外とエラーの違いは何ですか

Pythonの例外とエラーの違いは何ですか

藏色散人
藏色散人オリジナル
2019-06-26 09:58:1213393ブラウズ

Pythonの例外とエラーの違いは何ですか

#Python 例外とエラーの違いは何ですか

#1. エラー

ソフトウェアの観点から見ると、エラーは文法的または論理的なものです。構文エラーは、ソフトウェアにインタプリタで解釈できない、またはコンパイラでコンパイルできない構造的なエラーがあることを示します。これらのエラーは、プログラムを実行する前に修正する必要があります。プログラムの構文が正しい場合、残りは論理エラーです。ロジックエラーの原因としては、不完全な入力や不正な入力が考えられますが、ロジックの生成や計算ができない、結果を出力するために必要な処理が実行できない場合もあります。これらのエラーは、一般にそれぞれドメイン エラーおよび範囲エラーとして知られています。

Python がエラーを検出すると、インタープリターは現在のストリームが実行を続行できないことを指摘し、この時点で例外が発生します。

2. 例外

例外の最も適切な説明は次のとおりです: プログラム内のエラーにより、通常の制御フローの外で実行されるアクションです。この動作は 2 つのフェーズに分かれています。最初は例外の発生の原因となったエラー、次に検出 (および可能なアクション) フェーズです。

最初のフェーズは、例外条件 (例外条件と呼ばれることもあります) が発生した後に発生します。エラーが検出され、例外条件が認識されると、インタープリターは例外をスローします。開始はトリガーまたは生成とも呼ばれ、インタープリターは現在の制御フローにエラーが発生したことを通知します。

Python では、プログラマ自身が例外を発生させることもできます。Python インタープリタによって発生させられたか、プログラマによって発生されたかに関わらず、例外はエラーが発生したことを示す信号です。エラーを処理し、適切なアクションを実行するために、現在のストリームが中断されます。 . 、これは第 2 段階です。

例外処理は第 2 フェーズで発生します。例外が発生した後は、エラーを無視する (エラーをログに記録するが何もアクションを実行しない、修復措置を講じてプログラムを終了する) か、問題を軽減して実行を継続するかに至るまで、さまざまなアクションを呼び出すことができます。これらの操作はすべて制御の継続または分岐を表しており、重要なのは、プログラマがエラー発生時の実行方法をプログラムに指示できることです。

例外の発生と (さらに重要な) 例外の処理をサポートする Python のような言語を使用すると、開発者はエラーが発生したときに、より直接的にエラーを制御できます。プログラマは、エラーを検出する能力を得るだけでなく、エラーが発生した場合に、より信頼性の高い是正措置を講じることができます。

実行時のエラー管理機能のおかげで、アプリケーションの堅牢性が大幅に向上しました。

例外と例外処理は新しい概念ではありません。これらは、Ada、Modula-3、C、Eiffel、Java にも存在します。例外の原因は、システム エラーやハードウェア割り込みなどの例外を処理するオペレーティング システム コードに遡ることができます。

1965 年頃、PL/1 は、例外と、それが提供するソフトウェア ツールとしての例外処理をサポートする最初の主要な言語として登場しました。例外処理をサポートする他の言語と同様に、Python は「try/try」ブロックと「catch/capture」ブロックの概念を採用しており、例外処理がより「規律正しく」行われています。

「キャッチオール/キャッチオール」コードをやみくもに作成するのではなく、例外ごとに異なるハンドラーを作成できます。

推奨学習:「

Python チュートリアル

以上がPythonの例外とエラーの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。