0

1352789792.757637 と 1352789919.235815 のような 2 つの文字列があります。それらを時間に戻して比較する方法は?

手伝ってくれてありがとう

4

2 に答える 2

2

これは、これらの秒がエポックからの秒数であると想定しています。もしそうなら、これはに変換するために働くはずですstruct_time:

>>> import time
>>> time.gmtime(1352789792.757637)
time.struct_time(tm_year=2012, tm_mon=11, tm_mday=13, tm_hour=6, tm_min=56, tm_sec=32, tm_wday=1, tm_yday=318, tm_isdst=0)

ただし、ファイルから返された形式は実際には秒を表しているため、違いなどの操作はすべてこれらの数値に対して実行できることに注意してください。実行したい分析の種類によっては、少し簡単になる場合があります (つまりfloats、時間に変換する代わりにそれらを扱います)。ただし、ユースケースがわからないため、これは見当違いかもしれません:)

于 2012-11-13T07:03:03.233 に答える
1

比較するには、タイムスタンプを直接使用できます。次のようなことをするだけです:

if float(timestamp1)<float(timestamp2): ...

タイムスタンプを便利なものに変換するには、 time モジュールを使用できます。

例えば:

>> import time
>> time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(float("1352789792.757637"))
'2012-11-13 07:56:32'

time.strptime を使用して、フォーマット済みの日付文字列であるタイムスタンプに戻すことができます。この複雑な例の出力を参照してください。

>> import time
>> time.mktime(time.strptime(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(float("1352789792.757637"))),"%Y-%m-%d %H:%M:%S"))
1352789792.0
于 2012-11-13T07:10:22.047 に答える