[issue15941] Time module: effect of time.timezone change
![](https://secure.gravatar.com/avatar/fa0f7819f1825f596b384c19aa7dcf33.jpg?s=120&d=mm&r=g)
New submission from Terry J. Reedy: "time.timezone The offset of the local (non-DST) timezone, in seconds west of UTC (negative in most of Western Europe, positive in the US, zero in the UK)." Quite aside from #9305 (UTC is not a place), this does not specify the effect of setting this attribute. It does not change the output of localtime, asctime, or ctime (on Windows). Does is affect anything else? strftime? If setting it has no effect, the doc should say so. (And then perhaps it should be made read-only in the future, as setting it expecting an effect would be a bug.) ---------- assignee: docs@python components: Documentation messages: 170450 nosy: belopolsky, docs@python, haypo, terry.reedy priority: normal severity: normal stage: needs patch status: open title: Time module: effect of time.timezone change versions: Python 3.3 _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue15941> _______________________________________
![](https://secure.gravatar.com/avatar/fa0f7819f1825f596b384c19aa7dcf33.jpg?s=120&d=mm&r=g)
Alexander Belopolsky added the comment: Isn't this a duplicate of issue 8810? ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue15941> _______________________________________
![](https://secure.gravatar.com/avatar/fa0f7819f1825f596b384c19aa7dcf33.jpg?s=120&d=mm&r=g)
Alexander Belopolsky added the comment: I've read this more carefully and I now understand the issue. Indeed, setting time.timezone or time.altzone has no effect on say time.strftime('%z'). I think this should be documented and the doc should refer to time.tzset() for a proper way to change these variables. As for making them read only, I don't think there is a non-hackish way to make module globals read-only. I also believe that rather than improving these variables we should encourage people to use datetime module's new timezone features because at almost any location on Earth timezone offset is not a constant and varies over time. ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue15941> _______________________________________
![](https://secure.gravatar.com/avatar/fa0f7819f1825f596b384c19aa7dcf33.jpg?s=120&d=mm&r=g)
Terry J. Reedy added the comment: #8810 and #9305 seem related, if not dups. You are right about module vars. They are all instances of one module class with one __setattr__. How about "Setting this attribute has no effect. See time.TZset or even better, the datetime module." (I had not noticed .altzone) ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue15941> _______________________________________
![](https://secure.gravatar.com/avatar/fa0f7819f1825f596b384c19aa7dcf33.jpg?s=120&d=mm&r=g)
Alexander Belopolsky added the comment:
Setting this attribute has no effect.
Strictly speaking, setting this attribute has the effect of changing the value of this attribute. I cannot come up with a better wording at this hour, but I would say something about it being "informational" only. We should also mention that these attributes are set by time.tzset(). ---------- _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue15941> _______________________________________
![](https://secure.gravatar.com/avatar/fa0f7819f1825f596b384c19aa7dcf33.jpg?s=120&d=mm&r=g)
Alexander Belopolsky added the comment: Closing in favor of #28157. ---------- status: open -> closed superseder: -> Document time module constants (timezone, tzname, etc.) as deprecated. _______________________________________ Python tracker <report@bugs.python.org> <http://bugs.python.org/issue15941> _______________________________________
participants (2)
-
Alexander Belopolsky
-
Terry J. Reedy