2013年4月18日木曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7)のVII部(例外)のまとめ演習1.(try/except ステートメント)を解いてみる。

その他参考書籍

1.(try/except ステートメント)

コード(BBEdit)

sample.py

#!/usr/bin/env python3.3
#-*- coding: utf-8 -*-

def oops1():
    raise IndexError('oops1')

def oops2():
    raise KeyError('oops2')

if __name__ == '__main__':
    try:
        oops1()
    except IndexError as err:
        print(type(err), err, err.args)
    except Exception as err:
        print(type(err), err, err.args)
    
    try:
        oops2()
    except IndexError as err:
        print(type(err), err, err.args)
    except Exception as err:
        print(type(err), err, err.args)
    
    # IndexError, KeyErrorはともにLEGBルールのビルトインスコープに属する
    for x in ['IndexError', 'KeyError']:
        print(x, x in dir(__builtins__))

入出力結果(Terminal)

$ ./sample.py
<class 'IndexError'> oops1 ('oops1',)
<class 'KeyError'> 'oops2' ('oops2',)
IndexError True
KeyError True
$

0 コメント:

コメントを投稿