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) * ![]() |
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 |