2

次のコードは'2012-06-07 00:00'、タイムスタンプ1339119900000との両方を返し1339120800000ます。

>>> from datetime import date
>>> date.fromtimestamp(1339119900000/1e3).strftime('%Y-%m-%d %H:%M')
'2012-06-07 00:00'
>>> date.fromtimestamp(1339120800000/1e3).strftime('%Y-%m-%d %H:%M')
'2012-06-07 00:00'

ただし、これらのタイムスタンプは 15 分間隔であり、どちらも真夜中ではありません。

Windows 7 マシンで 32 ビット Python 2.7.3 を実行していますが、Red Hat マシンでも同じことに気付きました。これはなぜですか?タイムスタンプから時間と分の解像度を取得するにはどうすればよいですか?

4

2 に答える 2

7

dateではなく、オブジェクトを作成していますdatetime。日付はすべての時間情報を無視します。

datetime時間コンポーネントを保持したい場合は、代わりにオブジェクトを使用します。

>>> from datetime import datetime
>>> datetime.fromtimestamp(1339119900000/1e3).strftime('%Y-%m-%d %H:%M')
'2012-06-08 02:45'
>>> datetime.fromtimestamp(1339120800000/1e3).strftime('%Y-%m-%d %H:%M')
'2012-06-08 03:00'
于 2013-06-08T01:55:37.620 に答える
1

date何時間も何分も使用しないdatetime.datetime

>>>> datetime.fromtimestamp(1339119900000/1e3).strftime('%Y-%m-%d %H:%M')
'2012-06-08 03:45'
于 2013-06-08T01:56:07.810 に答える