About datetime class python



为什么这个语句

print(datetime.date(2023,12,4).strftime('%A')) 

给我一个错误的输出:Monday然而,正确的输出是星期三。

我认为问题可能在我的机器上,但我使用了其他人,在线和本地的输出相同

您对参数的顺序感到困惑。根据文档:

classdatetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0, tzinfo=None, *, fold=0)

datetime.date(2023,12,4),即2023 Dec 4,确实是星期一。

4月12日是个星期三。
print(datetime.date(2023,12,4).strftime('%A'))

是month=12 and day=4,所以它返回Monday

你应该试试这个print(datetime.date(2023,4,12).strftime('%A'))

datetime.datetime.strptime("2023/4/12", "%Y/%d/%m").strftime('%A')

最新更新