我无法理解以下示例中的内容
>>> datetime.datetime.strptime("Aug 10", "%b %y")
datetime.datetime(2010, 8, 1, 0, 0)
有道理%b是月份名称,%y是年份所以2010年8月对应datetime(2010, 8, 1, 0, 0)
但是,如果我将%y更改为%m,其中%m是月份的日期,则会变得奇怪
>>> datetime.datetime.strptime("Aug 10", "%b %m")
datetime.datetime(1900, 10, 1, 0, 0)
突然间它拒绝承认“八月”
答案 0 :(得分:2)
您的代码无效的原因非常简单:%m
不是日期,而是数字的月份。现在这个月首先匹配8月,然后是10,这就是你得到的。请尝试使用%d
代替一天中的某一天。
>>> datetime.datetime.strptime('Aug 10', '%b %d')
datetime.datetime(1900, 8, 10, 0, 0)