我有一个文件,在文件的每一行我都有一个日期。日期的格式如下。
Dec 15, 2013 6:50:52 PM CST
我想以python格式转换日期。
例如:
2013-12-15 6:50:52
我面临的问题是如何删除附加到日期的垃圾桶,即(CST)
我采用以下方法转换日期
date_capture=datetime.datetime.strptime('Dec 11, 2013 11:55:00 AM','%b %d, %Y %H:%M:%S %p')
但是我仍然无法从日期中删除垃圾字符串CST。
我们将不胜感激。
答案 0 :(得分:2)
s = "Dec 15, 2013 6:50:52 PM CST"
new_s = " ".join(s.split()[:-1])
print new_s
<强>输出:强>
Dec 15, 2013 6:50:52 PM
然后,您可以转换日期:
date_capture = datetime.datetime.strptime(new_s, '%b %d, %Y %H:%M:%S %p')
您也可以直接执行此操作:
date_capture = datetime.datetime.strptime(" ".join(s.split()[:-1]), '%b %d, %Y %H:%M:%S %p')
答案 1 :(得分:0)
使用str.rsplit
:
>>> 'Dec 15, 2013 6:50:52 PM CST'.rsplit(None, 1)[0]
'Dec 15, 2013 6:50:52 PM'
>>> time_str = 'Dec 15, 2013 6:50:52 PM CST'.rsplit(None, 1)[0]
>>> datetime.datetime.strptime(time_str, '%b %d, %Y %H:%M:%S %p')
datetime.datetime(2013, 12, 15, 6, 50, 52)