我有一个如下格式的字符串:Mon Feb 27 2012 13:15:00 GMT+0330 (Iraq Standard Time)
,我要把它转换成这种格式:2012-02-27T13:15:00.000
,我已经完成了:
startTime=`Mon Feb 27 2012 13:15:00 GMT+0330 (Iraq Standard Time)`
strp_time = time.strptime(startTime, '%a %b %d %Y %H:%M:%S %Z')
start = time.strftime('%Y-%m-%dT%H:%M:%S',strp_time)
但它导致了这个错误:
^{pr2}$所以,我试图删除(Iraq Standard Time)
:
start=re.sub(r' \(.+?\)$', '', startTime)
strp_time = time.strptime(start, '%a %b %d %Y %H:%M:%S %Z')
start = time.strftime('%Y-%m-%dT%H:%M:%S',strp_time)
但是,我得到了一个错误:
unconverted data remains: +0330
如果将正则表达式更改为:
它将工作,因为您也可以剥离时区差异信息(+或-),这应该对您来说是可以的,因为您无论如何都要丢弃%Z数据。在
您应该可以使用%z来获得+0330时差,但它不适用于我的Python版本,可能是因为一个bug。对于python3.2似乎已经解决了,请参见http://bugs.python.org/issue6641
相关问题 更多 >
编程相关推荐