switchの代わりに辞書を使う

投稿者: | 2022-07-09

pythonにはswith文がないため、if〜elifを使う場合がある

実は、辞書を使うと楽になる

目次

if~elseを使った場合(よくあるケース)

season = input('season?: ')

if season == 'Winter':
    holiday = 'New Year\'s Day'
elif season == 'Spring':
    holiday = 'May Day'
elif season == 'Summer':
    holiday = 'Juneteenth'
elif season == 'Fall':
    holiday = 'Haloween'
else:
    holiday = 'Personal day off'

print(f'{season} holiday is {holiday}')

辞書を使うと…

  • 辞書でgetを使い、辞書になかった場合のデフォルト値を指定している
season = input('season?: ')

holiday = {
    'Winter': 'New Year\'s Day',
    'Spring': 'May Day',
    'Summer': 'Juneteenth',
    'Fall': 'Haloween',
    }.get(season, 'Personal day off')

print(f'{season} holiday is {holiday}')