我有一个日期有几种不同格式的文件,我试图在Python中将它们全部变成YYYYMMDD格式。大多数日期采用以下格式:
周一,2013年7月1日16:33:59 GMT
我不知道如何让他们进入
20130701
如果这是一个非常简单的问题,我道歉 - 我对python
有点新鲜 编辑:我试图在任何给定的日期执行此操作。我以7月1日为例,回想起来,我似乎在问一个不同的问题。所以我想我正在寻找能找到日期并重新格式化的东西答案 0 :(得分:4)
from dateutil import parser
dtobject = parser.parse(datestring)
datutil.parser.parse()
方法可识别各种日期格式,并返回datetime.datetime()
object。
如果要将结果格式化为(统一)字符串,请使用datetime.strftime()
method:
dtobject.strftime('%Y%m%d')
演示:
>>> from dateutil import parser
>>> parser.parse('Mon, 01 Jul 2013 16:33:59 GMT')
datetime.datetime(2013, 7, 1, 16, 33, 59, tzinfo=tzlocal())
>>> parser.parse('Mon, 01 Jul 2013 16:33:59 GMT').strftime('%Y%m%d')
'20130701'
答案 1 :(得分:0)
这也可以通过以下方式实现:
import datetime
x = 'Mon, 01 Jul 2013 16:33:59 GMT'
''.join(str(datetime.datetime.strptime(x, '%a, %d %b %Y %H:%M:%S %Z').date()).split('-'))
如果您的日期字符串中引入了任何其他参数,则可以包含该指令。例如,%p是Locale相当于AM或PM。