time.strptime() and time.strftime() reciprocity
denis.kasak at gmail.com
Tue Feb 17 01:26:04 CET 2009
On Mon, Feb 16, 2009 at 11:57 PM, Greg Krohn <invalid at example.invalid>
> ActivePython 184.108.40.206 (ActiveState Software Inc.) based on
> Python 2.6.1 (r261:67515, Dec 5 2008, 13:58:38) [MSC v.1500 32 bit (Intel)]
> Type "help", "copyright", "credits" or "license" for more information.
>>>> import time
>>>> fmt = "%m/%d/%y %I:%M %p"
>>>> print time.strptime(fmt, time.strftime(fmt))
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> File "C:\Python26\lib\_strptime.py", line 454, in _strptime_time
> return _strptime(data_string, format)
> File "C:\Python26\lib\_strptime.py", line 325, in _strptime
> (data_string, format))
> ValueError: time data '%m/%d/%y %I:%M %p' does not match format '02/16/09
> So, yeah, that seems weird to me. Does anyone get similar results, know why
> this is happening, and/or how to fix it?
It's actually pretty trivial to fix, which you would have also known
if you had read the message of the exception more carefully. :P
You passed the arguments for strptime() the wrong way around. Just
pass them in reverse and your problem will be fixed.
More information about the Python-list