【问题标题】:Formatting date 2018-04-03T14:10:00-07:00 to any readable date/time in Python将日期 2018-04-03T14:10:00-07:00 格式化为 Python 中的任何可读日期/时间
【发布时间】:2018-04-03 20:17:11
【问题描述】:

2018-04-03T14:10:00-07:00 是否有内置的 python 方法?或者 Django 中的东西?我只习惯于使用 javascript/node,我无法弄清楚

【问题讨论】:

标签: python django date


【解决方案1】:

我没有看到任何特定的单个函数来处理该格式,但是稍微调整一下文本并使用自定义格式将得到你所需要的。

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")

希望对你有帮助!

【讨论】:

    【解决方案2】:

    您不妨试试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 一起使用,以便于访问。

    【讨论】:

      【解决方案3】:

      请尝试以下代码:

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

      输出

      '03-04-2018 14:10:000000'

      你可以传递你想要过期的特定格式。 如需参考,请参阅此文档: Strftime options

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-12
        • 1970-01-01
        • 2021-01-29
        • 2016-11-06
        • 2021-03-25
        • 2018-11-28
        相关资源
        最近更新 更多