我有一个 SQLite3 数据库,其中日期和时间存储为字符串"Tue Aug 06 20:13:58 CEST 2013"
,我需要将一些数据提取到 CSV 文件中。
我知道如何打开数据库、连接和光标(读取),以及如何打开输出 CSV 文件进行写入(使用csv
模块)。
日期时间字符串应转换为"YYYYMMDD"
字符串——即"20130806"
在上述情况下。
我的想法是使用datetime.datetime.strptime("Tue Aug 06 20:13:58 CEST 2013"
, frm)
来获取datetime
稍后用于生成格式化值的对象。但是,我收到以下错误:
Traceback (most recent call last):
File "a.py", line 18, in <module>
dt = datetime.datetime.strptime(s, frm)
File "C:\Python33\lib\_strptime.py", line 500, in _strptime_datetime
tt, fraction = _strptime(data_string, format)
File "C:\Python33\lib\_strptime.py", line 337, in _strptime
(data_string, format))
ValueError: time data 'Tue Aug 06 20:13:51 CEST 2013' does not match format
'%a %b %m %H:%M:%S %Z %Y'
我认为这可能是语言环境的问题,因为我正在使用...
>>> import locale
>>> locale.getdefaultlocale()
('cs_CZ', 'cp1250')
但是,我无法将语言环境设置为'en'
、en_us
等:
>>> locale.setlocale(locale.LC_ALL, 'en')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python33\lib\locale.py", line 541, in setlocale
return _setlocale(category, locale)
locale.Error: unsupported locale setting
我需要你的眼睛和经验。