带有2位数字年份的Python时代失败

我正在读取一组日期和数字类似于以下示例的数据文件:

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)
上一篇:使用pytz在Python中本地化Epoch时间


下一篇:多元线性回归:波士顿房价预测问题TesnsorFlow实战