当我跑的时候
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'
这怎么可能
我假设您正在某个IDE中开发代码片段,或者
Jupyter
,然后将其粘贴到容器中运行的代码中。如果是这样的话,请确保在容器映像中使用与本地开发相同的venv
,以避免类似于这些可能会导致调试繁琐的问题如果我使用
python 3.7
,我无法重现错误,因此您可以通过使用最新的docker映像并使用更新的python版本运行脚本来解决错误(您使用的是3.6
)Here是一个复杂的指南,介绍如何设置Docker文件,使您能够完全控制使用哪个版本的
python
,我发现这非常有用相关问题 更多 >
编程相关推荐