一个有效生日的要求如下:
- 生日不能大于当前日期,不能小于某个日期,如19000101
- 日期要合法,不能是 20111345
- 兼容闰年处理,如20200229 是合法的,20190229 就是非法的
请问满足以上需求的 Python 代码怎么写?
PHP 中有checkdate()
函数,已经包含了闰年的处理,查了 Python 的 datetime 标准库,作为初学者还不太明白怎么用,也没有发现有现成的方法可以调用,整个过程都需要完全实现吗?是否有部分标准库可以支持?比如闰年的判断。所以来请教一下 :)
先说结论:datetime 可以实现你的大部分需求(你的 2 和 3 要求), 和你说的 checkdate 类似的用法是
datetime.date(year, month, day)
,如果日期合法则返回一个 date 对象,否则抛出异常;然后你可以将得到的 date 对象和预设的日期进行比较来实现你的需求 1此外,
我对你查了标准库表示怀疑,python 的文档是非常详细的,如果你看了 datetime 文档,你还不知道 datetime 如何使用,那我觉得 python 可能不适合你