格式化日期2018-04-03T14:10:00-07:00到Python中的任何可读日期/时间

时间:2018-04-03 20:17:12

标签: python django date

2018-04-03T14:10:00-07:00有内置的python方法吗?还是Django中的东西?我只习惯使用javascript / node而我无法解决这个问题

3 个答案:

答案 0 :(得分:0)

我没有看到任何特定的单一功能来处理这种格式,但稍微调整一下文字并使用自定义格式就可以满足您的需求。

from datetime import datetime 
txt = "2018-04-03T14:10:00-07:00"
txtfmt = txt[:10]+ " " + txt[11:19] + " " + txt[19:22] + txt[-2:]
dt = datetime.strptime(txtfmt,"%Y-%m-%d %H:%M:%S %z")

希望它有所帮助!

答案 1 :(得分:0)

您可能想尝试Arrow

>>> import arrow
>>> d = arrow.get('2018-04-03T14:10:00-07:00')
>>> d
<Arrow [2018-04-03T14:10:00-07:00]>
>>> d.humanize()
'3 hours ago'
>>> d.format()
'2018-04-03 14:10:00-07:00'
>>>

对于Django,您可以将其与django-arrow-field一起使用,以便于访问。

答案 2 :(得分:0)

请尝试以下代码:

from dateutil.parser import parse

parse('2018-04-03T14:10:00-07:00').strftime('%d-%m-%Y %H:%M:%f')

输出

  
    
      

&#39; 03-04-2018 14:10:000000&#39;

    
  

您可以在日期之外传递所需的特定格式。 供参考请参阅此文件: Strftime options