我正在读取一组日期和数字类似于以下示例的数据文件:
Jan-61 25.3
Feb-61 23.5
Mar-61 37.9
Apr-61 40.6
我正在使用阅读日期
datetime.datetime.strptime(dateVariable, "%b-%y")
具有两位数的年份会引起问题,因为少于70(即时代)的数字被解释为是2000年而不是1900年.
编辑所有文件并更改日期格式将非常困难.有没有办法告诉日期时间以不同的方式解释两位数年份?
解决方法:
您必须在某处绘制粗线.例如,如果您不接受将来的日期(即“ 6月12日”是2012年,但“ 8月12日”是1912年):
dt = datetime.datetime.strptime(dateVariable, "%b-%y")
if dt > datetime.now():
dt = dt - datetime.timedelta(years=100)