Quantcast
Channel: Maesan blog » Python
Viewing all articles
Browse latest Browse all 7

PythonでKeyErrorを回避する

$
0
0

ハッシュ(Python的には辞書)で存在しないキーでアクセスするとKeyErrorが出ちゃう。
データは必要なのでキーの存在確認をして、存在しなかったらデフォルトの値とかを表示したい場合に

data = {}
if 'hoge' in data:
print data['hoge']
else:
print "default"

ってやればいいんだけど、getを使うと超かんたんにできちゃう

data = {}
print data.get('hoge', 'default')

で、他にもsetdefaultってのがあるらしく、表示だけじゃなくてデータをセットしたい場合に

data = {}
# getでやるならこんな感じなのを
data['hoge'] = data.get('hoge', 'default')
# setdefaultならこんな感じで書ける
data.setdefault('hoge2', 'default2')

何か気持ちイイw


Viewing all articles
Browse latest Browse all 7

Trending Articles