現在の見出し:9.3節:try-except文
見出し一覧
- 9.3節:try-except文
- - Pythonの例外処理(try-except文)とは
- - 特定の例外をキャッチする方法
- - 例外オブジェクトを使う
- - エラーが起きなかった時の処理(else節)
- - 必ず実行される処理(finally節)
- - 意図的に例外を発生させる処理(raise文)
- - 9.3節の演習問題
【PR】『Python』を学べる企業・個人向けのプログラミングコース
Pythonマスター講座第9章 9.3節で学べること
- try-except文の基本
- 特定の例外例外は予期せぬエラーが発生した場合に通常の処理を中断して別の処理を行う仕組みです。をキャッチする方法
- エラーが起きなかった時の処理(else節)
- 必ず実行される処理(finally節)
- 意図的に例外を発生させる処理(raise文)
Pythonの例外処理(try-except文)とは
try-except文はプログラムプログラムはコンピュータに対して何をすべきかを指示する一連の命令です。の実行中、例外が発生する可能性がある部分を事前に想定し、例外が起きても適切に対処できるようにする仕組みのことです。通常、例外が発生するとプログラムが強制的に停止してしまいますが、try-except文を使うことで例外を捕捉して、プログラムを継続させることができます。
try-except文は、以下のような形式で記述します。tryブロック内で例外が発生すると、プログラムはすぐにexceptブロックに移動して例外処理を実行します。
# try-except文の基本構文
try:
# 例外が起きる可能性があるコード
処理内容
except:
# 例外が発生した時の処理
例外処理内容
例外ハンドリングの実装
例外ハンドリングを適切に実装することによって、予期しない問題が発生してもプログラムが安全に動作し続けるため、使いやすいプログラムを作成できます。ファイルが見つからない場合やネットワークネットワークはコンピューターやスマートフォンなどの機器が互いに通信し合うための仕組みや手段です。接続に問題がある場合など、実際のプログラム運用で起こりがちな問題に対して事前に対策を講じることが可能です。
# try-except文の基本的な使い方のサンプルコード
try:
result = 10 / 0
print(result)
except:
print("例外が発生しました")
例外が発生しました
行数 | コード | 解説 |
---|---|---|
1行目 | try: | 例外が発生する可能性があるコードブロックの開始を宣言する |
2行目 | result = 10 / 0 | 10を0で割り算を実行し、計算結果をresult変数変数はデータを一時的に記憶しておく場所です。に代入代入は変数に値を割り当てる操作です。する処理。0で割るとZeroDivisionError例外が発生する |
3行目 | print(result) | 計算結果が格納されたresult変数の値を画面に出力する処理。例外が発生した場合はこの行は実行されない |
4行目 | except: | tryブロック内で任意の例外が発生した場合に実行される処理ブロックの開始を宣言する |
5行目 | print("例外が発生しました") | 例外が捕捉された際に「例外が発生しました」というメッセージを画面に出力する |
ファイル操作のエラーハンドリングでも使える
try-except文は、ファイル操作のエラーハンドリングでも使える便利な仕組みです。「try: 処理 except エラーの種類: エラー時の処理」の形式で記述することで、エラーが発生してもプログラムを継続実行できます。
# 存在しないファイルを開く際のエラーハンドリング
try:
with open('nonexistent.txt', 'r', encoding='utf-8') as file:
content = file.read()
print(content)
except FileNotFoundError:
print('ファイルが見つかりません')
ファイルが見つかりません
行数 | コード | 解説 |
---|---|---|
2行目 | try: | エラーが発生する可能性のあるコードブロックを開始 |
3行目 | with open('nonexistent.txt', 'r', encoding='utf-8') as file: | 存在しないファイルを読み取りモードで開こうと試行 |
4行目 | content = file.read() | ファイルの全内容を読み込み |
5行目 | print(content) | 読み込んだ内容を表示 |
6行目 | except FileNotFoundError: | ファイルが見つからないエラーが発生した場合の処理 |
7行目 | print('ファイルが見つかりません') | ユーザーにわかりやすいエラーメッセージを表示 |