Python辞書型の最初と最後のキーを取得する

日付をキーにした辞書の最初と最後を拾うのにちょっと詰まったのでメモ。Python 3ではkeysメソッドが返すのはリストじゃなくてビューに変わるけど、sorted関数にすぐ渡しているので3でもそのまま動く。ちなみにiterkeyメソッドは廃止なので積極的に使わない方が良い。

import datetime
day23 = datetime.datetime(2012, 10, 23)
day24 = datetime.datetime(2012, 10, 24)
# dictionary does not have order.
dict = {day24 : 24, day23 : 23}
# get first key
sorted(dict.keys())[0]
# get last key
sorted(dict.keys())[len(dict.keys()) - 1]
view raw firstLastKey.py hosted with ❤ by GitHub