python入門用の個人用まとめwikiです。サンプルコードを載せていきたいと思います。ご意見がございましたら、お伝えくださると嬉しいです。

×

Pythonで例外処理


簡単な例外処理を書きます。
詳しく調べる方はこちらにて。


基本的には、try,except,else,finallyにて定義します。
try :
   [処理]
except :
   [例外が発生した際の処理]
else:
   [例外が発生しなかった際の処理] 
finally:
   [処理が終わった際の処理]

例外の値を取得する場合は、
try:
   [例外処理]
except Exception , message:
   print message

一番簡単な例

def testExcept():
    arr = ["1","2","3","hoge"]
    for val in arr:
        try:
            print int(val)
        except Exception , message:
            print message
        else:
            print "例外はありません"
        finally:
            print "=== 変換処理完了 : " + val + "==="
1
例外はありません
=== 変換処理完了 : 1===
2
例外はありません
=== 変換処理完了 : 2===
3
例外はありません
=== 変換処理完了 : 3===
invalid literal for int() with base 10: 'hoge'
=== 変換処理完了 : hoge===

自分で定義した例外を出力する

class myexcept(Exception):
    def __init__(self,message):
        self.message = message

    def __str__(self):
        return self.message

    
def testExcept():
    arr = ["1","2","3","hoge"]
    for val in arr:
        try:
            if val.isdigit():
                print int(val)
            else:
                print "例外処理を投げます"
                raise myexcept(val + "は数値ではありません")
        except Exception , message:
            print message
        else:
            print "例外はありません"
        finally:
            print "=== 変換処理完了 : " + val + "==="
1
例外はありません
=== 変換処理完了 : 1===
2
例外はありません
=== 変換処理完了 : 2===
3
例外はありません
=== 変換処理完了 : 3===
例外処理を投げます
hogeは数値ではありません
=== 変換処理完了 : hoge===

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Books







AD






管理人/副管理人のみ編集できます

メンバー募集!