2012年5月10日木曜日

開発環境

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

1.

IndexErrorに対応

コード(TextWrangler)

#!/usr/bin/env python
#encoding: utf-8

def oops():
 raise IndexError

try:
 oppos()
except:
 print("例外発生")
else:
 print("例外は発生しなかった")

入出力結果(Terminal)

$ python sample.py
例外発生
$

KeyErrorを発生させる。

コード(TextWrangler)

#!/usr/bin/env python
#encoding: utf-8

def oops():
 raise KeyError

try:
 oppos()
except:
 print("例外発生")
else:
 print("例外は発生しなかった")

入出力結果(Terminal)

$ python sample.py
例外発生
$

IndexError、KeyErrorといった「名前」LEGBルールのBの名前空間、ビルトインスコープに属する。

確認

コード(TextWrangler)

#!/usr/bin/env python

count = 0
for x in dir(__builtins__):
 if(x == 'IndexError' or x == 'KeyError'):
  print(x + "はビルトインスコープ")
  count += 1
  if count == 2: break

入出力結果(Terminal)

$ python sample.py
IndexErrorはビルトインスコープ
KeyErrorはビルトインスコープ
$

0 コメント:

コメントを投稿