如何在python中使用strftime()格式化'0000-00-00 00:00:00'?

Son*_*han 0 python datetime strftime

格式化日期为:

dob = datetime(0000, 00, 00)
dob = dob.strftime("%Y-%m-%d")
Run Code Online (Sandbox Code Playgroud)

但它给出了错误: ValueError: year is out of range

我如何在python中datetime(0000,00,00)使用格式化strftime()

ill*_*ght 5

Python 关于datetime模块文档,特别是datetime类声明该datetime对象可以具有以下范围内的属性值:

MINYEAR <= year <= MAXYEAR
1 <= month <= 12
1 <= day <= number of days in the given month and year
0 <= hour < 24
0 <= minute < 60
0 <= second < 60
0 <= microsecond < 1000000
Run Code Online (Sandbox Code Playgroud)

该模块还定义了以下常量:

datetime.MINYEAR
Run Code Online (Sandbox Code Playgroud)

日期或日期时间对象中允许的最小年份数.MINYEAR1.

datetime.MAXYEAR
Run Code Online (Sandbox Code Playgroud)

日期或日期时间对象中允许的最大年份数.MAXYEAR9999.

这意味着您不能datetime(0000, 00, 00)datetime类的构造函数中使用那些()参数,因此ValueError声明给定年份超出范围

由于您无法datetime首先使用以下参数构造对象,因此无法strftime在其上调用该方法.