[New-bugs-announce] [issue16810] inconsistency in weekday
report at bugs.python.org
Sat Dec 29 07:54:21 CET 2012
New submission from Glenn Linderman:
Return a time.struct_time such as returned by time.localtime(). The hours, minutes and seconds are 0, and the DST flag is -1. d.timetuple() is equivalent to time.struct_time((d.year, d.month, d.day, 0, 0, 0, d.weekday(), yday, -1)), where yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1 is the day number within the current year starting with 1 for January 1st.
However, timetuple's 7th element has a range of 0-6 where 0 is Sunday, and d.weekday has a range of 0-6 where 0 is Monday. So the claim of equivalence is false. "d.weekday()" in the above could be replaced by "( d.weekday() + 1 ) % 7"
I guess datetime consistently uses 0==Monday, and weeks starting on Monday, except for the timetuple (which probably has compatibility constraints which force it to return a different value, which I consider to be more correct).
assignee: docs at python
nosy: docs at python, v+python
title: inconsistency in weekday
versions: Python 3.3
Python tracker <report at bugs.python.org>
More information about the New-bugs-announce