ホームページ > バックエンド開発 > Python チュートリアル > Pythonでの例外処理(コード例)

Pythonでの例外処理(コード例)

不言
リリース: 2019-01-25 10:02:47
転載
2473 人が閲覧しました

この記事は Python の例外処理 (コード例) に関する内容であり、一定の参考価値がありますので、困っている方は参考にしていただければ幸いです。

一部のコードが間違っている可能性があると思われる場合は、このコードを実行してみます。エラーが発生した場合、後続のコードは実行を続行せず、エラー処理コードに直接ジャンプします。は、Except 文ブロックであり、Except を実行した後、finally 文ブロックがあれば、finally 文ブロックが実行され、この時点で実行が完了します。

Python の try ステートメントには 2 つのスタイルがあります

  1. 例外の処理 (try/excel/else)

  2. 最初のスタイルそれは、例外が発生したかどうかに関係なく、最後のコード (try/finally) が実行されるということです。 #try 動作原理は、try ステートメントが開始されると、Python は現在のプログラムのコンテキストでそのステートメントをマークし、例外が発生したときにここに戻ることができるということです。try 句が最初に実行され、次に何が起こるかは次の条件によって決まります。実行中に発生するかどうか。

    1. try 後のステートメントの実行時に例外が発生した場合、Python は try に戻り、例外に一致する最初の else 句を実行します。例外が処理された後、制御フローは try ステートメント全体を通過します (例外処理を除く 例外が発生すると、新しい例外がスローされます。
  3. 2. try の後のステートメントで例外が発生したが、一致する例外句がない場合、例外は上位の try またはプログラムの最上位レベルに送信されます (これにより、プログラムが終了し、デフォルトのエラーメッセージ)。
3. try 句の実行時に例外が発生しない場合、Python は else ステートメントの後に (else がある場合) ステートメントを実行し、制御フローは try ステートメント全体を通過します。

try/finally style

try:
    <语句> #运行别的代码
except <名字>: 
    <语句> #如果在try部份引发了&#39;name&#39;异常
except <名字>,<数据>:
    <语句> #如果引发了&#39;name&#39;异常,获得附加的数据
else:
    <语句> #如果没有异常发生
ログイン後にコピー

Python は、try 句の実行時に例外がスローされるかどうかに関係なく、常にfinally 句を実行します。
1. 例外が発生しない場合、Python は try 句を実行してから、finally 句を実行して続行します。
2. try 句で例外が発生した場合、Python は戻ってfinally句を実行し、例外を上部のtryに送信します。

制御フローはtryステートメント全体を通過しません## #。

try/finally は、例外が発生したかどうかに関係なく、特定のコードが確実に実行されるようにする場合に便利です。

これは、ファイルを開くときに便利です。最後に必ず最後にファイルを close() します。

try ステートメント句フォーム テーブル例外: すべての例外をキャッチします。例外名: キャッチします。特定の例外のみ

例外名,値: 例外とその追加データをキャッチします (例外情報を値に保存します)

例外 (名前 1, 名前 2): リストされた例外をキャッチします else: 例外がない場合finally: 常に実行されます

try:
    <语句>
finally:
    <语句> #退出try时总会执行finally语句
ログイン後にコピー
try:
   f = open(&#39;file.txt&#39;)
except IOError as e:
   print e
else:
   print &#39;wrong&#39;
ログイン後にコピー

試行/例外/finally:

[Errno 2] No such file or directory: &#39;file.txt&#39;
ログイン後にコピー

以上がPythonでの例外処理(コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:cnblogs.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート