繁体   English   中英

python将字符串转换为django时间格式的datetime

[英]python convert string to datetime which is django time format

时间=“ 2019-02-20T04:35:48.679000 + 00:00”

>>> import datetime
>>> 
>>> date_time_str = "2019-02-20T04:35:48.679000+00:00"
>>> date_time_obj = datetime.datetime.strptime(date_time_str, '%Y-%m-%d %H:%M:%S.%f')

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.5/_strptime.py", line 510, in _strptime_datetime
    tt, fraction = _strptime(data_string, format)
  File "/usr/lib/python3.5/_strptime.py", line 343, in _strptime
    (data_string, format))
ValueError: time data '2019-02-20T04:35:48.679000+00:00' does not match format '%Y-%m-%d %H:%M:%S.%f'

时间是Django格式的时间。 不幸的是,我将相同的内容存储在CharField()中,因此在从数据库中获取数据时,它以时间作为字符串。

我如何将其转换为实际时间。

您需要考虑“ T”,我不知道如何匹配“ +00:00”部分,除非它只是一个始终具有该值的文字。 所以这有效:

import datetime
date_time_str = "2019-02-20T04:35:48.679000+00:00"
date_time_obj = datetime.datetime.strptime(date_time_str, '%Y-%m-%dT%H:%M:%S.%f+00:00')

尝试使用python-dateutil

安装它pip install python-dateutil

接着

from dateutil import parser
dt = parser.parse("2019-02-20T04:35:48.679000+00:00")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM