[Python-ideas] lack of time zone support
Lie Ryan
lie.1296 at gmail.com
Fri Jun 4 22:19:32 CEST 2010
On 06/02/10 10:50, Brett Cannon wrote:
> On Tue, Jun 1, 2010 at 11:32, Bill Janssen <janssen at parc.com> wrote:
>> To me, the single most irritating problem with the Python support for
>> date/time is the lack of support for time-zone understanding. This
>> breaks down into two major issues, %z and lack of a standard time-zone
>> table.
>>
>> First, let's say I have to parse a Medusa log file, which contains time
>> stamps in the form "DD/Mon/YYYY:HH:MM:SS [+|-]HHMM", e.g.
>> "31/May/2010:07:10:04 -0800". What I'd like to write is
>>
>> tm = time.mktime(time.strptime(timestamp, "%d/%b/%Y:%H:%M:%S %z"))
>>
>> which is what I'd do if I was writing in C. But no! The Python
>> _strptime module doesn't support "%z". So instead, I have to pick the
>> timestamp apart and do things separately and remember that "-0800" isn't
>> octal, and also isn't the same as -800, and remember whether to add or
>> subtract it. This seems insane. So, IMO, support for %z should be
>> added to Lib/_strptime.py. We need a patch.
>>
>> Secondly, we really need concrete subclasses of tzinfo, and some sort of
>> mapping. Lots of people have spent lots of time trying to figure out
>> this cryptic hint in datetime: "The datetime module does not supply any
>> concrete subclasses of tzinfo." I'm not sure whether pytz is the best
>> ideas, or what I use, the "zoneinfo" module from python-dateutil. With
>> that, I still have to add the Windows timezone names, using the table at
>> http://unicode.org/repos/cldr/trunk/common/supplemental/windowsZones.xml,
>> because the code in python-dateutil only works with Windows timezone
>> names when running on Windows.
>
> First of all, there will never be a timezone table in the stdlib,
> period. This has been brought up before and is always shot down
> because python-dev does not want to have to keep track of timezone
> changes. pytz and other modules fit that bill fine.
Has a module to pull timezone data from the OS been proposed before?
More information about the Python-ideas
mailing list