我在ISO格式分裂时间戳按小时
[u"2000-01-01T00:00:00+00:00", u"2000-01-01T00:00:00+00:00", ... ]
我试图分裂按小时每串时间戳列表。然而,使用"string".strp(":")
显然不会工作,因为too many values to unpack
错误(由于几个:),并且"string".strp(":%S")
给出值错误more than one value to unpack
。 有什么建议吗?
我在ISO格式分裂时间戳按小时
[u"2000-01-01T00:00:00+00:00", u"2000-01-01T00:00:00+00:00", ... ]
我试图分裂按小时每串时间戳列表。然而,使用"string".strp(":")
显然不会工作,因为too many values to unpack
错误(由于几个:),并且"string".strp(":%S")
给出值错误more than one value to unpack
。 有什么建议吗?
iso8601
是一个奇妙的,开放源码的Python模块来解析ISO日期时间字符串http://code.google.com/p/pyiso8601/
它把它变成Python的原生datetime
类型应该是比较容易的工作。
你有两种选择。您可以使用datetime.datetime.strptime
为您提供datetime
对象,然后只需执行dt.hour
,您可能想要执行此操作,具体取决于您对这些对象所做的操作。
或者,如果您想按照原样使用字符串处理,则可以使用str.split
(如上所示),但使用可选的第二个参数(即分割的最大次数),所以s.split(":", 1)
。或者类似地,str.partition
,它基本上会做同样的事情,但不会为没有“:”的事物引发错误。使用这两种方法,您需要先使用切片剥离开始时的事物。
感谢您的帮助。我会试试这个。 – ehertele 2012-07-24 18:07:33