Python 在应用程序引擎中转换时间到日期时间的字符串表示形式

Python 在应用程序引擎中转换时间到日期时间的字符串表示形式,python,date-formatting,Python,Date Formatting,在标准python中,我可以通过以下方式将时间的字符串表示形式转换为日期时间: date_string = u'Tue, 13 Sep 2011 02:38:59 GMT'; date_object = datetime.strptime(date_string, '%a, %d %b %Y %H:%M:%S %Z'); 在我调用同一个over-app引擎(在该引擎中出现错误)之前,这一切正常: time data did not match format: data=2011-09-13

在标准python中,我可以通过以下方式将时间的字符串表示形式转换为日期时间:

date_string = u'Tue, 13 Sep 2011 02:38:59 GMT';
date_object = datetime.strptime(date_string, '%a, %d %b %Y %H:%M:%S %Z');
在我调用同一个over-app引擎(在该引擎中出现错误)之前,这一切正常:

time data did not match format:  data=2011-09-13 02:38:59  fmt=%a, %d %b %Y %H:%M:%S %Z

如何正确转换此日期字符串,以便获得日期时间表示形式?

您的错误消息表明您实际上没有通过2011年9月13日星期二02:38:59 GMT,而是通过了
2011-09-13 02:38:59
。您确定要将正确的参数传递给
strtime

我的python在以下方面运行良好:

datetime.strptime(u'Tue, 13 Sep 2011 02:38:59 GMT', "%a, %d %b %Y %H:%M:%S %Z")
# returns datetime.datetime(2011, 9, 13, 2, 38, 59)
这对我来说也很好:

from dateutil imoprt parser as dparser
dparser.parse("Tue, 13 Sep 2011 02:38:59 GMT")
# returns datetime.datetime(2011, 9, 13, 2, 38, 59, tzinfo=tzutc())

您的错误消息表明您没有真正通过2011年9月13日星期二02:38:59 GMT,而是通过了
2011-09-13 02:38:59
。您确定要将正确的参数传递给
strtime

我的python在以下方面运行良好:

datetime.strptime(u'Tue, 13 Sep 2011 02:38:59 GMT', "%a, %d %b %Y %H:%M:%S %Z")
# returns datetime.datetime(2011, 9, 13, 2, 38, 59)
这对我来说也很好:

from dateutil imoprt parser as dparser
dparser.parse("Tue, 13 Sep 2011 02:38:59 GMT")
# returns datetime.datetime(2011, 9, 13, 2, 38, 59, tzinfo=tzutc())

如果您在本地获得了一些工作,但在GAE上没有,请检查版本。可能GAE使用的是2.5,而您使用的是2.7.2或3.2?
%Z
参数仅在一个方向上受支持,可能存在其他问题。不要依赖它。如果您需要类似的内容,请使用
dateutil.parse
。这显然不是特定于应用程序引擎的。请看错误消息-您正在传递日期“2011-09-13 02:38:59”,并要求它以完全不同的表示形式对其进行解析。我再也不会收到此错误消息了-我昨天一定盯着屏幕看得太久了。谢谢你的帮助!如果您在本地获得了一些工作,但在GAE上没有,请检查版本。可能GAE使用的是2.5,而您使用的是2.7.2或3.2?
%Z
参数仅在一个方向上受支持,可能存在其他问题。不要依赖它。如果您需要类似的内容,请使用
dateutil.parse
。这显然不是特定于应用程序引擎的。请看错误消息-您正在传递日期“2011-09-13 02:38:59”,并要求它以完全不同的表示形式对其进行解析。我再也不会收到此错误消息了-我昨天一定盯着屏幕看得太久了。谢谢你的帮助!