[wxPython-users] OT - strptime problems

jmf jfauth at bluewin.ch
Tue Feb 5 06:49:37 PST 2008


w2k, py251, wxpy2871-ansi

It seems
- strptime() needs some locale initialization with the side effect that
the language plays a role (août : French, August : German).
- the unicode variant fails !? bug/issue with the "û" ? I did not investigate
further.

 >>> import locale
 >>> locale.setlocale(locale.LC_ALL, '')
French_Switzerland.1252
 >>> locale.getlocale()
('French_Switzerland', '1252')
 >>> import time
 >>> d = '16 août 2005'
 >>> fmt = '%d %b %Y'
 >>> time.strptime(d,fmt)
(2005, 8, 16, 0, 0, 0, 1, 228, -1)
 >>> #but
 >>> time.strptime('16 August 2005', fmt)
Traceback (most recent call last):
   File "<psi last command>", line 1, in <module>
   File "c:\python25\lib\_strptime.py", line 331, in strptime
     (data_string, format))
ValueError: time data did not match format:  data=16 August 2005  fmt=%d %b %Y
 >>> time.strptime('16. August 2005', fmt)
Traceback (most recent call last):
   File "<psi last command>", line 1, in <module>
   File "c:\python25\lib\_strptime.py", line 331, in strptime
     (data_string, format))
ValueError: time data did not match format:  data=16. August 2005  fmt=%d %b %Y
 >>> ud = unicode(d, 'cp1252')
 >>> ufmt = unicode(fmt, 'cp1252')
 >>> time.strptime(ud, ufmt)
C:\Python25\lib\_strptime.py:369: UnicodeWarning: Unicode equal comparison failed
to convert both arguments to Unicode - interpreting them as being unequal
   month = locale_time.a_month.index(found_dict['b'].lower())
Traceback (most recent call last):
   File "<psi last command>", line 1, in <module>
   File "c:\python25\lib\_strptime.py", line 369, in strptime
     month = locale_time.a_month.index(found_dict['b'].lower())
ValueError: list.index(x): x not in list

Workaround (?): Splitting the date and building its own struct_time with the
help of a dictionary like (in French)
{'janvier': 1,
  'février': 2,
  'mars': 3,
  'avril': 4,
  'mai':, 5,
  'juin': 6,
  'juillet': 7,
  'août': 8,
  'septembre': 9,
  'octobre': 10,
  'novembre': 11,
  'décembre': 12}

Jean-Michel Fauth, Switzerland




More information about the wxpython-users mailing list