1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

製薬企業研究者がPythonの例外処理についてまとめてみた

Posted at

はじめに

ここでは、Pythonの例外処理について解説します。

例外処理の基本

例外処理は、プログラムを実行中に何らかのエラーが発生した場合の処理を記述するものです。
tryexceptを用いて、以下のように記述します。

import pandas as pd

try:
    df = pd.read_csv('sample.csv')
except FileNotFoundError:
    print('File not found.')

tryに続けてエラー(例外)が発生する可能性のある処理を、exceptに続けてエラーが発生した場合の処理を記述します。
exceptに続けてエラーの種類を書いておくと、指定したエラーが発生した場合に例外処理が実行されます。
ここで示した例では、FileNotFoundError(指定されたファイルが見つからないという例外)が発生した場合のみ、except節の処理が実行されます。
exceptの直後に何も記述しなかった場合は全てのエラーに対して、except節の処理が実行されますが、予期せぬエラーに対しても処理が実行されてしまうため、推奨されません。

else節

elseを入れると、エラーが発生しなかった場合に、続けて行いたい処理を記述することができます。

import pandas as pd

try:
    df = pd.read_csv('sample.csv')
except FileNotFoundError:
    print('File not found.')
else:
    df.to_excel('sample.xlsx', index=False)

上の例では、読み込んだファイルと同じ内容をエクセルファイルとして保存するようにしています。

finally節

finallyを使うと、エラーが発生したかどうかに関係なく実行したい処理を記述できます。

import pandas as pd

try:
    df = pd.read_csv('sample.csv')
except FileNotFoundError:
    print('File not found.')
finally:
    print('finished.')

上の例では、ファイルが読み込めても読み込めなくても、最後にfinished.という文字列が出力されます。

まとめ

ここでは、Pythonの例外処理について解説しました。
ユーザーからの入力を求めたり、データベースに接続したりする場合には例外処理を入れておくと良いでしょう。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?