0

试图从字符串解析时间,但得到这个错误。尝试了一些格式化字符串。

错误:

time data '10/2/2010 0:00:00' does not match format '"%m/%d/%Y %H:%M:%S"'

代码:

strdt = '10/2/2010 0:00:00'
dt = datetime.strptime(strdt, '"%m/%d/%Y %H:%M:%S"')
4

3 回答 3

8

您的格式中有引号。把那些拿出来。

dt = datetime.strptime(strdt, '%m/%d/%Y %H:%M:%S')
于 2012-09-13T21:16:26.357 回答
2

尝试从格式 '"%m/%d/%Y %H:%M:%S"' -> '%m/%d/%Y %H:%M:%S' 中删除引号

于 2012-09-13T21:17:03.040 回答
1

或者你可以使用dateutil

In [68]: import dateutil.parser as parser

In [69]: parser.parse('10/2/2010 0:00:00')
Out[69]: datetime.datetime(2010, 10, 2, 0, 0)

请注意,默认情况下,parser.parse解释10/2/2010MM/D/YYYY格式。

如果您的字符串有月份的前一天,则使用

parser.parse("10/2/2010", dayfirst = True)

还有 yearfirst 选项;有关更多详细信息,请参阅文档

于 2012-09-13T21:28:45.150 回答