像这里问的其他问题一样,我想做一个简单的时间格式转换。我在Perl中找到了如何做到这一点的答案,但在Python中没有。
我有一根这样的绳子:
on Jun 03, 02010 at 10:22PM
我想把它转换成这样的datetime对象:
Thu, 03 Jun 2010 22:22:00 -0000
我把我的输入切分成这样:
date = str(comment.div.contents[5].contents)
month = date[6:9]
day = date[10:12]
year = date[15:19]
time = date[23:30]
这就给我设置了一些很好的变量,我可以把它们扔回datetime,但是在我这样做之前,我必须转换时间。在上面的例子中,我是否应该将time
分开,分别计算hh
和{AM|PM}
?
我很懒,所以我可能会用strtime和strftime:
使用dateutil:
如果你能在
date_str
中去掉讨厌的“on”并将02010更改为2010,那么你可以使用dt.datetime.strptime
:或者,作为Muhammad Alkarouri points out,如果
date_str
s总是以on
开头,并使用前缀为零的四位数年份,则可以使用Python的
strftime
和strptime
使用机器的同名C函数。因此,请检查您的本地手册页,了解您的机器可用的格式代码。有关格式代码(可能可用)的一般列表,请参见http://au2.php.net/strftime。您可能更适合使用标准库,即time.strptime。
特别是,您提到的时间可以转换为time.struct_time,如下所示
既然我们有了
struct_time
中的t
,我们可以请注意,您在
"Thu, 03 Jun 22:22:00 -0000"
(位-0000
)中所需的区域信息不是由第一种格式提供的,因此不会出现在结果中。相关问题 更多 >
编程相关推荐