2016-12-28 14 views
0

と表示されます。私は与えられた時間に12を加えていることを理解しており、それは24:00:00を返すが、私は00:00:00を得る方法を理解できない。12時間から24時間に変換するPythonでは、次のコードを使用すると、24:00:00と24:00:00とではなく00:00:00

私のタイムスタンプには時間値のリストがあります。

r = timestamp[:-2] if timestamp[-2:] == "AM" else str(int(timestamp[:2]) + 12) + timestamp[2:8] 
+2

は、なぜあなたはこれを達成するための適切な方法を使用していませんか? (すなわち、 'datetime'モジュール)。 – DeepSpace

+0

[datetime](https://docs.python.org/3/library/datetime.html)モジュールを使用してみましたか? –

答えて

2

モジュロ演算を使用して24で除算し、余りを求めます。これに

int(timestamp[:2]) + 12 

:これを変更

(int(timestamp[:2]) + 12) % 24 

デモンストレーション:

>>> 12 + 12 
24 
>>> (12 + 12) % 24 
0 
+0

それは0と私は信じていない00を提供します。 –

+1

0と00は同じ番号です。結果を2桁にパディングしたい場合は、何らかの文字列書式を使用します(例: 'str(hour).rjust(2、 '0')'。 – TigerhawkT3

関連する問題