Python Try Except
- 前のページ Python PIP
- 次のページ Python コマンド エントリー
try
ブロックは、エラーを検出するためにコードブロックをテストします。
except
ブロックは、エラーを処理します。
finally
ブロックは、tryおよびexceptブロックの結果に関わらず、コードを実行します。
例外処理
Pythonを呼び出し、エラーまたは例外が発生すると、通常は停止し、エラーメッセージを生成します。
使用できます try
これらの例外を処理するステートメント:
インスタンス
tryブロックはxが未定義であるため、例外を生成します:
try: print(x) except: print("An exception occurred")
tryブロックがエラーを発生させたため、exceptブロックが実行されます。
tryブロックが指定されていない場合、プログラムはクラッシュし、エラーを発生させます:
インスタンス
このステートメントはエラーを発生させます。なぜなら、xが未定義であるためです:
print(x)
複数の例外
必要に応じて、任意の数のexceptionブロックを定義できます。例えば、特定のタイプのエラーに対して特別なコードブロックを実行したい場合:
インスタンス
tryブロックがエラーを発生させるとき、 NameError
、それとも他のエラーの場合には、別のメッセージを表示します:
try: print(x) except NameError: print("Variable x is not defined") except: print("Something else went wrong")
Else
エラーが発生しない場合、 else
キーワードを使用して実行したいコードブロックを定義します:
インスタンス
この例では、try
ブロックはエラーを生成しません:
try: print("Hello") except: print("Something went wrong") else: print("Nothing went wrong")
Finally
指定された場合 finally
ブロックが指定された場合、tryブロックがエラーを発生させようともしないで、finallyブロックが実行されます。
インスタンス
try: print(x) except: print("Something went wrong") finally: print("The 'try except' is finished")
これはオブジェクトを閉じるためおよびリソースをクリーンアップするのに非常に役立ちます:
インスタンス
書き込み不可のファイルを開いて書き込むと試みます:
try: f = open("demofile.txt") f.write("Lorum Ipsum") except: print("ファイルへの書き込み中に何かが間違った") finally: f.close()
プログラムは続行し、ファイルオブジェクトをオープンしません。
例外を発生させる
Python 開発者として、条件が発生した場合に例外を発生させることを選択できます。
例外を発生させるには、以下を使用してください: raise
キーワード。
インスタンス
x が 0 未満の場合、例外を発生させてプログラムを終了させる:
x = -1 if x < 0: raise Exception("Sorry, no numbers below zero")
raise
キーワードを使用して例外を発生させます。
発生させる例外のタイプやユーザーに表示するテキストを定義できます。
インスタンス
x が整数でない場合、TypeError を発生させる:
x = "hello" if not type(x) is int: raise TypeError("Only integers are allowed")
- 前のページ Python PIP
- 次のページ Python コマンド エントリー