0
0

More than 3 years have passed since last update.

Pythonで辞書から探す時のTips(個人的)

Posted at

概要

Pythonの辞書から探す時、Keyが存在しないとエラーが出てしまう。

今まではifで回避していたが、そういえばexcept KeyErrorでも回避できるので、ごく簡単にまとめる。

内容

環境

macOS Catalina
Python 3.7.0

準備

tmp.py
names = {'tokino': 'sora', 'sakura': 'miko'}
print(names['suzuki'])

ここで、names['suzuki']とすると、エラーが出てしまう。

解決策1 ifを使う

tmp.py
if 'suzuki' not in names:
    names['suzuki'] = 'not yet'
print(names['suzuki'])

解決策2 tryを使う

tmp.py
try:
    print(names['suzuki'])
except KeyError:
    names['suzuki'] = 'not yet'
    print(names['suzuki'])

蛇足

単にデフォルト値を欲しいだけなら、

print(names.get('suzuki', 'not yet'))

デフォルト値を設定したいだけなら、
defaultdictを使うことで解決するかもしれない。

私の例はあまりいい例ではないと思う。

参考にさせていただいた本・頁

特になし

感想

書き方の幅が広がって良かった。

今後

tryの方を使った方が自然な時は、使っていこうと思う。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0