微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

10000年的datetime.strptime转换失败

如何解决10000年的datetime.strptime转换失败

下面的python代码在12-31-9999之前可以正常工作。

一旦我将日期更改为01-01-10000,就会引发错误(请参阅所附的屏幕截图)

from datetime import datetime
import time
 
          
myNewDate = "12-31-9999"
            
myNewDateTime = datetime.strptime(myNewDate,'%m-%d-%Y').date()
print (myNewDateTime)

以下是屏幕截图:

enter image description here

解决方法

根据docs,仅支持4位数字的年份。

年份受1989 C标准限制。

,

%Y表示4位数字的年份,该模式不匹配最后一个0。您无法使用python datetime处理超过9999年的年份:https://docs.python.org/3/library/datetime.html#datetime.MAXYEAR

,

感谢您的回复 看到错误时,我也这么想。 我还是专家,因为我仍然是python的新秀。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。