Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x python3无法将字符串转换为datetime对象_Python 3.x_Datetime - Fatal编程技术网

Python 3.x python3无法将字符串转换为datetime对象

Python 3.x python3无法将字符串转换为datetime对象,python-3.x,datetime,Python 3.x,Datetime,我有以下代码: from datetime import datetime date_time_str = '2020-07-17 21:59:49.55' date_time_obj = datetime.strptime(date_time_str, '%y-%m-%d %H:%M:%S.%f') print "The type of the date is now", type(date_time_obj) print "The date is&qu

我有以下代码:

from datetime import datetime

date_time_str = '2020-07-17 21:59:49.55'

date_time_obj = datetime.strptime(date_time_str, '%y-%m-%d %H:%M:%S.%f')


print "The type of the date is now",  type(date_time_obj)
print "The date is", date_time_obj
这会导致错误:

Traceback (most recent call last):
  File "main.py", line 5, in <module>
    date_time_obj = datetime.strptime(date_time_str, '%y-%m-%d %H:%M:%S.%f')
  File "/usr/lib/python2.7/_strptime.py", line 332, in _strptime
    (data_string, format))
ValueError: time data '2020-07-17 21:59:49.553' does not match format '%y-%m-%d %H:%M:%S.%f'

首先,这不是有效的Python3代码。您在代码中使用了Python2
print
语句,试图在Python3上运行该语句会导致出现
SyntaxError


如错误所示,日期字符串与指定的格式不匹配。看一看,;我注意到的第一个问题是,您给出了一个4位数的年份(2020年),但尝试将其与两位数年份的
%y
对齐。可能还有其他问题,通过查看该表应该很容易找到。

尝试
'%Y-%m-%d%H:%m:%S.%f'
,在第一个示例中,您有完整的年份。如果您有可用的Python 3.7+,您可以使用
datetime.fromsoformat('2020-07-17 21:59:49.55')更简单地解析
因为您的输入与ISO8601兼容。这种方法也是可行的。
date_time_str = '18/09/19 01:55:19'
date_time_obj = datetime.strptime(date_time_str, '%d/%m/%y %H:%M:%S')