我跑步时
from datetime import datetime
print(datetime.strptime('2020-01-15 09:20:00.00+00:00', '%Y-%m-%d %H:%M:%S.%f%z'))
它打印出来
2020-01-15 09:20:00+00:00
当我使用完全相同的行运行docker容器时,会引发此错误:
File "/vdp/base_functions.py", line 9, in <module>
j2lm@VB | print(datetime.strptime('2020-01-15 09:20:00.00+00:00', '%Y-%m-%d %H:%M:%S.%f%z'))
j2lm@VB | File "/usr/lib/python3.6/_strptime.py", line 565, in _strptime_datetime
j2lm@VB | tt, fraction = _strptime(data_string, format)
j2lm@VB | File "/usr/lib/python3.6/_strptime.py", line 362, in _strptime
j2lm@VB | (data_string, format))
j2lm@VB | ValueError: time data '2020-01-15 09:20:00.00+00:00' does not match format '%Y-%m-%d %H:%M:%S.%f%z'
那怎么可能?
答案 0 :(得分:1)
那怎么可能?
我假设您正在某个IDE或Jupyter
中开发代码段,而不是将其粘贴到容器中运行的代码中。如果是这样,请确保在您的容器映像中使用与本地开发相同的venv
,以避免类似这样的问题,调试起来可能很麻烦。
如果我使用python 3.7
,我将无法重现该错误,因此您可能仅通过使用最新的docker映像并使用较新的python版本运行脚本即可解决该错误(您使用{{1 }}。
Here是有关如何设置Docker文件的复杂指南,您可以完全控制使用哪个版本的3.6
,我发现这非常有帮助。