【问题标题】:Django check if variable contains datetime and formatDjango检查变量是否包含日期时间和格式
【发布时间】:2016-10-05 18:55:29
【问题描述】:

如何检查变量是否包含日期时间及其格式以仅包含日期、小时、分钟和秒。不是毫秒。

我遇到的问题是该变量不是日期时间格式,因为它可以包含文本或日期时间。

return isinstance(new_value, datetime.datetime)

因此运行上面的命令返回 false。

如果 new_value 包含 2016-05-24 09:26:51.754000+00:00 我如何将其格式化为如下所示:2016-05-24 09:26:51

【问题讨论】:

标签: python django reversion


【解决方案1】:

首先您需要将日期字符串转换为日期时间对象,这样您可以使用“isinstance()”检查它,但我想建议更好的解决方案,因为我认为 :),因为在 Python 2.7 中,仍然很受欢迎,当将日期字符串转换为日期时间对象时,我们遇到时区偏移( %z )的问题,所以这是我没有'strptime'的解决方案:

from dateutil import parser
date = '2016-05-24 09:26:51.754000+00:00'
try:
    # something if format correct
    parsed_date = parser.parse(date)
    # formatting
    print parsed_date.strftime("%Y-%m-%d %H:%M:%S")
except ValueError:
    # something if format incorrect
    print 'Wrong date format'

好的,请不要忘记写:

$pip install python-dateutil

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多