Issue 18827: mistake in the timedelta.total_seconds docstring (original) (raw)

Issue18827

Created on 2013-08-24 22:05 by allo, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Messages (3)
msg196100 - (view) Author: Alexander Schier (allo) Date: 2013-08-24 22:05
> Return the total number of seconds contained in the duration. Equivalent to (td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / 10**6 computed with true division enabled. Should be > Return the total number of seconds contained in the duration. Equivalent to (td.microseconds / 10**6 + (td.seconds + td.days * 24 * 3600) * 10**6) computed with true division enabled. At least i hope, the bug is only in the docs and not in the function ;).
msg196101 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2013-08-24 22:14
The docs look correct to me. For example, >>> from datetime import * >>> td = datetime.now() - datetime(1,1,1) >>> td datetime.timedelta(735103, 61756, 484000) >>> td.total_seconds() 63512960956.484 ^ What the docs say match that output: >>> (td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / 1e6 63512960956.484 Your suggestion's output: >>> (td.microseconds / 1e6 + (td.seconds + td.days * 24 * 3600) * 10**6) 6.3512960956e+16 You're multiplying the number seconds by a million - not a good idea ;-)
msg196102 - (view) Author: Alexander Schier (allo) Date: 2013-08-24 22:31
Err, sorry my fault. Too late in the evening ;). I saw the division by one million, but not the multiplation by one million before. Additionally i was confused, because i expected that seconds are added to each other in the parenthesis. closing.
History
Date User Action Args
2022-04-11 14:57:50 admin set github: 63027
2013-08-24 22:31:42 allo set status: open -> closedresolution: not a bugmessages: +
2013-08-24 22:14:29 tim.peters set nosy: + tim.petersmessages: +
2013-08-24 22:05:21 allo create