Python基础 - 详解django.utils.dateparse

前言

考虑到Django中我们会遇到将字符串转换为时间的情况,一般情况下都可以通过Python标准模块中的Datetime来进行转换,但是熟悉Django模块的同学都知道,也可以通过django.utils.dateparse可以方便的操作。

基本介绍

dateparse接受ISO 8601日期/时间格式的字符串,并从Python datetime模块中的相应类返回对象。

  • 如果输入格式正确但不是有效的日期或时间,他们会抛出ValueError异常。
  • 如果格式不完整,则返回为None
  • 会自动将皮秒转换为毫秒。

方法介绍

函数 说明
parse_date(value) 解析一个字符串并返回一个datetime.date
parse_time(value) 解析一个字符串并返回一个datetime.time
parse_datetime(value) 解析一个字符串并返回一个datetime.datetime
parse_duration(value) 解析一个字符串并返回一个datetime.timedelta

代码示例

#coding=utf8
from datetime import datetime
from django.utils import dateparse


utcnow=datetime.utcnow().isoformat()
print(utcnow)
last_check_time = dateparse.parse_datetime(utcnow)
print(last_check_time, type(last_check_time))

结果输出:

2019-02-24T12:45:56.546192
2019-02-24 12:45:56.546192 <class 'datetime.datetime'>
展开剩余53%