1

y'dayのjson日付文字列を生成しようとしています。RFC3339形式で生成する方法がわかりません。

from datetime import date, timedelta
yesterday = date.today() - timedelta(1)


def dthandler(obj):
        return obj.isoformat()

with io.open('out/test.json', 'w', encoding='utf-8') as outfile:
    json.dump(rdata, outfile, indent=4, sort_keys=True, default=dthandler)

日付を次のようにフォーマットします。

"Date": "2012-12-04", 

RfC3339形式を取得するためのフォーマッター関数を作成するにはどうすればよいですか。

私はpython3.xを使用しています

4

1 に答える 1

2

yesterdaydatetime.dateオブジェクトです。出力に時間が必要な場合は、datetime.datetimeオブジェクトに変換できます。

from datetime import datetime, time, timedelta

yesterday = datetime.utcnow() - timedelta(days=1)
dt = datetime.combine(yesterday.date(), time(0, 0)) # midnight
rfc3339str = dt.isoformat() + "Z"

これはPython2と3の両方で機能するはずです。

于 2012-12-06T04:06:37.343 に答える