您要在python中实现的日期验证将在很大程度上取决于您拥有的日期的格式。datetime库中的strptime函数可用于将字符串解析为日期/时间。
示例
import datetime
date_string = '2017-12-31'
date_format = '%Y-%m-%d'
try:
date_obj = datetime.datetime.strptime(date_string, date_format)
print(date_obj)
except ValueError:
print("Incorrect data format, should be YYYY-MM-DD")
输出结果
这将给出输出-
2017-12-31 00:00:00
您可以使用许多其他指令来解析日期。以下是strptime()
格式字符串支持的指令。
指示
| 含义
| %一种
| 语言环境的缩写工作日名称。
|
%一种
| 语言环境的完整工作日名称。
|
%b
| 语言环境的缩写月份名称。
|
%B
| 语言环境的完整月份名称。
|
%C
| 语言环境的适当日期和时间表示。
|
%d
| 以十进制数[01,31]表示的月份中的一天。
|
%H
| 小时(24小时制),为十进制数字[00,23]。
|
%一世
| 小时(12小时制)为十进制数字[01,12]。
|
%j
| 一年中的天,以十进制数字[001,366]为准。
|
%m
| 以十进制数字[01,12]表示的月份。
|
%M
| 以十进制数字[00,59]表示。
|
%p
| 相当于AM或PM的语言环境。
|
%S
| 第二个十进制数字[00,61]。
|
%U
| 一年中的周号(星期日为一周的第一天),以十进制数[00,53]。新年中第一个星期日之前的所有天均视为第0周。
|
%w
| 工作日为十进制数字[0(Sunday),6]。
|
%W
| 一年中的星期号(星期一为星期的第一天),以十进制数[00,53]。第一个星期一之前的新的一年中的所有天均视为在第0周。
|
%X
| 语言环境的适当日期表示形式。
|
%X
| 语言环境的适当时间表示形式。
|
%y
| 没有世纪的年份作为十进制数字[00,99]。
|
%Y
| 以世纪作为十进制数字的年份。
|
%Z
| 时区名称(如果不存在时区,则没有字符)。
|
%%
| 文字“%”字符
|