はじめに APIでスタンダードな日付形式であるISO8601について、Pythonで扱うのに軽くはまったのでメモ。 ISO8601形式は様々な書き方ができますが、有名どころのAPIでは以下の2種類が多いと思います。 UTC 2016-12-31T20:02:05.123456Z APIのパラメータやサービスで設定したタイムゾーン 2016-12-31T20:02:05.123456+0900 文字列 -> datetime APIからJsonで戻ってきた文字列をPythonのdatetimeに変換します。常にJSTで統一しています。 datetimeはそのまま、>, < での比較ができ、timedeltaによる日付の計算ができるため、プログラム内では常にdatetimeで表現するのがよいかと思います。 def iso_to_jstdt(iso_str): dt = None try: dt