strptime默认到1900年

eli*_*gro 6 python datetime strftime

from datetime import datetime

datetime.strptime('%b%d  %I:%M%p', 'AUG21  3:26PM')

results with 
1900-08-21 15:26:00
Run Code Online (Sandbox Code Playgroud)

我怎样才能用pythonic的方式写作,以便在没有年份时,将当前年份视为默认值(2013)?

我检查过strftime函数没有更改默认选项..也许另一个时间库可以做什么?

谢谢

Mar*_*ssi 5

按原样解析日期,然后

date= date.replace(2013)
Run Code Online (Sandbox Code Playgroud)

这是您使用的模块最简单的解决方案之一.

更好地思考它,你可能会在明年2月29日遇到问题.

input= 'Aug21  3:26PM'
output= datetime.datetime.strptime('2013 '+ input ,'%Y %b%d  %I:%M%p')
Run Code Online (Sandbox Code Playgroud)