24

私はPythonオブジェクトを持っています:

time.struct_time(tm_year=2013, tm_mon=10, tm_mday=11, tm_hour=11, tm_min=57, tm_sec=12, tm_wday=4, tm_yday=284, tm_isdst=0)

そして、ISO文字列を取得する必要があります:

'2013-10-11T11:57:12Z'

どうやってやるの?

4

2 に答える 2

49

使用するtime.strftime()のがおそらく最も簡単です:

iso = time.strftime('%Y-%m-%dT%H:%M:%SZ', timetup)

デモ:

>>> import time
>>> timetup = time.gmtime()
>>> time.strftime('%Y-%m-%dT%H:%M:%SZ', timetup)
'2013-10-11T13:31:03Z'

メソッドdatetime.datetime()を持つオブジェクトを使用することもできます。datetime.isoformat()

>>> from datetime import datetime
>>> datetime(*timetup[:6]).isoformat()
'2013-10-11T13:31:03'

これにはタイムゾーンZマーカーがありません。それを追加するだけです。

于 2013-10-11T13:28:36.240 に答える
0
iso = time.strftime('%Y-%m-%dT%H:%M:%SZ', timetup)

次のように、最後の書式文字「Z」は必要ありません。

iso = time.strftime('%Y-%m-%dT%H:%M:%S', timetup)

「2015-11-05 02:09:57」のような時間文字列を取得します

于 2015-11-09T12:21:21.683 に答える