実装でのエラー処理
エラー処理、例外処理に関するTIPSページである.
ModuleNotFoundError: No module named '????'
考えられる原因
importするモジュール名が間違っている
使用端末にインストールされていないモジュールをimportしようとしている
対処法
モジュール名が間違っていないか確認する
個人PCなどの場合,該当モジュールをインストールする
NameError: name '???' is not defined
考えられる原因
importすべきライブラリがインポートされていない
定義されていない変数を参照した・変数名を間違えている
スコープが異なる変数を参照した
対処法
import文を追加する
変数名を確認する
変数のスコープを確認する
AttributeError: module '????' has no attribute '????'
AttributeError: '????' object has no attribute '????'
考えられる原因
対象モジュールに存在しない関数を呼び出そうとした
対象オブジェクトに存在しないメンバや関数を呼び出そうとした
例: intオブジェクトxに対して,x.appendを呼び出した
対処法
関数名が間違っていないか確認する
対象オブジェクトの型を正しくする
上記例の場合,xをリストオブジェクトにしておく
IndexError: list index out of range
考えられる原因
リストやタプルの存在しない添え字の位置の値を取得しようとした
例
lst = [0, 1, 2]
a = lst[10]
対処法
添え字の値が間違っていないか確認する