【发布时间】:2012-01-07 20:33:54
【问题描述】:
我使用如下所示的语句从字符串创建datetime 对象:
t = datetime.strptime("0023-10-10", "%Y-%m-%d")
后来,在我的代码中某处使用了t 对象并使用相同的格式字符串调用strftime 方法:
t.strftime("%Y-%m-%d")
这会导致ValueError: year=23 is before 1900; the datetime strftime() methods require year >= 1900。
在这两种类似的方法中,对 %Y 输入的验证似乎有所不同。
所以我必须做以下事情来确保我不会接受像23这样的糟糕年份:
try:
format = "%Y-%m-%d"
t = datetime.strptime("0023-10-10", format)
t.strftime(format)
except ValueError:
...
我想知道是否有更好的方法来进行此验证。
【问题讨论】:
标签: python datetime datetime-format