4

だから私はこのリストを持っています:

[datetime.timedelta(0, 1800), datetime.timedelta(0, 1800), datetime.timedelta(0, 1800), datetime.timedelta(0, 1800)]

集合的にそれは 2:00 時間です。これらを合計して 2:00 時間のデルタを取得しようとしていますが、これを 2.0 時間の文字列に変換する必要があります。それぞれ 1:30 時間は、最終カウントダウンとして 1.5 時間になります。

4

2 に答える 2

4

素朴なアプローチはseconds、各オブジェクトとsumそれらから を取得することです

>>> a = [datetime.timedelta(0, 1800)] * 4
>>> print sum([d.seconds for d in a])
7200
>>> print sum([d.seconds for d in a]) / 60.0 / 60.0
2.0

しかし、これはHaidroのソリューションほど堅牢ではありません:

import operator
reduce(operator.add, a)

これにより、timedelta必要に応じて使用できる正しいデルタを持つオブジェクトが得られます。

于 2013-09-17T22:26:42.150 に答える