Python 为什么time.mktime和datetime.timestamp使用相同的日期字符串输入生成不同的时间戳?

Python 为什么time.mktime和datetime.timestamp使用相同的日期字符串输入生成不同的时间戳?,python,python-3.x,Python,Python 3.x,我试图将日期字符串转换为时间戳,但通过实现以下方法,我得到了不同的结果: import time import datetime date = "11/10/2020" # First way print(time.mktime(time.strptime(date, "%d/%m/%Y"))) # Second way print(datetime.datetime.timestamp(datetime.datetime.strptime(date

我试图将日期字符串转换为时间戳,但通过实现以下方法,我得到了不同的结果:

import time
import datetime

date = "11/10/2020"

# First way
print(time.mktime(time.strptime(date, "%d/%m/%Y")))

# Second way
print(datetime.datetime.timestamp(datetime.datetime.strptime(date, "%m/%d/%Y")))
输出:

1602370800.0
1604966400.0

为什么它们不生成相同的输出?

在这两种情况下,您需要以相同的格式处理日期/月/年,以获得相同的结果,因为在第一种情况下,您将其视为
%d/%m/%Y
,而在第二种情况下,您将其视为
%m/%d/%Y
。这才是真正的不同

使处理格式相同,您将看到相同的结果