datetime.strptime python 的问题

issue with datetime.strptime python

这是我的代码:

import datetime
t1 = "Fri 11 Feb 2078 00:05:21"
t2 = "Mon 29 Dec 2064 03:33:48"
t3 = "Sat 02 May 2015 19:54:36"
t3_time = datetime.datetime.strptime(t3,"%a %d %B %Y %H:%M:%S")

print("debug")

t2_time = datetime.datetime.strptime(t2,"%a %d %B %Y %H:%M:%S")
t1_time = datetime.datetime.strptime(t1,"%a %d %B %Y %H:%M:%S")

错误: ValueError: 时间数据'Mon 29 Dec 2064 03:33:48' 不匹配格式 '%a %d %B %Y %H:%M:%S'

为什么 t3 被正确解析而 t1t2 没有被正确解析?

您需要在输入中给出月份的全称

这应该有效

import datetime

t1 = "Fri 11 February 2078 00:05:21"
t2 = "Mon 29 December 2064 03:33:48"
t3 = "Sat 02 May 2015 19:54:36"   

print("debug")

t1_time = datetime.datetime.strptime(t1,"%a %d %B %Y %H:%M:%S")
t2_time = datetime.datetime.strptime(t2,"%a %d %B %Y %H:%M:%S")
t3_time = datetime.datetime.strptime(t3,"%a %d %B %Y %H:%M:%S")

或者只使用 %b 而不是 %B

import datetime

t1 = "Fri 11 Feb 2078 00:05:21"
t2 = "Mon 29 Dec 2064 03:33:48"
t3 = "Sat 02 May 2015 19:54:36"   

print("debug")

t1_time = datetime.datetime.strptime(t1,"%a %d %b %Y %H:%M:%S")
t2_time = datetime.datetime.strptime(t2,"%a %d %b %Y %H:%M:%S")
t3_time = datetime.datetime.strptime(t3,"%a %d %b %Y %H:%M:%S")

请注意,在您的输入中添加文本日不会改变任何内容

例如

t4 = "Fri 02 May 2015 19:54:36"
t4_time = datetime.datetime.strptime(t4,"%a %d %B %Y %H:%M:%S")
print(t3_time == t4_time)

应该returnTrue