This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2017年08月10日 02:04 by JoshuaRLi, last changed 2022年04月11日 14:58 by admin. This issue is now closed.
| Messages (2) | |||
|---|---|---|---|
| msg300035 - (view) | Author: Joshua Li (JoshuaRLi) * | Date: 2017年08月10日 02:04 | |
See my SO answer and the corresponding question for detail: https://stackoverflow.com/a/45602760/5348393 Essentially, given two datetime.datetime instances t1 and t2, the following two syntactically different lines of code should be logically equivalent, but in fact differ by plus or minus one hour on Daylight Savings Time dates because `datetime.datetime.__sub__` does not appear to take DST into account. `t1.timestamp()-t2.timestamp()` `(t1-t2).total_seconds()` I am not sure if this is by intentional design, or a behavioral bug. |
|||
| msg300040 - (view) | Author: R. David Murray (r.david.murray) * (Python committer) | Date: 2017年08月10日 04:02 | |
It is by design. Read the footnote associated with the subtraction opertion on datetimes: after subtraction date2 + timedelta = date1, which implies that the subtraction ignores daylight savings transitions, since the addition does ("Note that no time zone adjustments are done even if the input is an aware object").
Perhaps the reason why it is designed this way is menioned in the PEP; I haven't looked.
|
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:58:49 | admin | set | github: 75350 |
| 2017年08月10日 04:02:18 | r.david.murray | set | status: open -> closed nosy: + r.david.murray messages: + msg300040 resolution: not a bug stage: resolved |
| 2017年08月10日 02:04:40 | JoshuaRLi | create | |