<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Aug 22, 2015 at 5:35 PM, Chris Barker <span dir="ltr"><<a href="mailto:chris.barker@noaa.gov" target="_blank">chris.barker@noaa.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Do pytz or datetutils let you construct a tzinfo instance from "EST" or the like?<br></div><div><br></div>(if the answer is no -- no need to drag the thread out...)</blockquote></div><br>You can discuss this on pytz or dateutils mailing lists.  The issue that I find relevant for this group is the question I now replaced the subject with:  Is EDT a timezone?</div><div class="gmail_extra"><br></div><div class="gmail_extra">The answer provided by python 3.3 and later is unequivocal "yes":</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">>>> from datetime import *</div><div class="gmail_extra">>>> u = datetime.now(timezone.utc)</div><div class="gmail_extra">>>> t = u.astimezone()</div><div class="gmail_extra">>>> t.tzname()</div><div class="gmail_extra">'EDT'</div><div class="gmail_extra">>>> isinstance(t.tzinfo, timezone)</div><div class="gmail_extra">True</div><div class="gmail_extra">>>> print(t.tzinfo)</div><div class="gmail_extra">EDT</div><div class="gmail_extra"><br></div><div class="gmail_extra">Some people on this list claimed that the following behavior is a bug:</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">>>> (t + timedelta(100)).strftime('%F %T %Z%z')</div><div class="gmail_extra">'2015-11-30 17:45:51 EDT-0400'</div><div class="gmail_extra"><br></div><div class="gmail_extra">because the correct result should be '2015-11-30 16:45:51 EST-0500'.</div><div class="gmail_extra"><br></div><div class="gmail_extra">My answer to that is that if you need that result, you can get it, but you have to ask for it explicitly:</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">>>> (t + timedelta(100)).astimezone().strftime('%F %T %Z%z')</div><div class="gmail_extra">'2015-11-30 16:45:51 EST-0500'</div><div class="gmail_extra"><br></div><div class="gmail_extra">I don't think we can do much here other than to educate Python users.</div></div></div></div></div>