iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python日期时间处理库dateutil详解
  • 754
分享到

Python日期时间处理库dateutil详解

2024-04-02 19:04:59 754人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录简介安装初试日期比较相对时间参考文献简介 dateutil 为 python 标准库 datetime 提供了强大的扩展 功能: 相对时间,如下周一、下个月、明年两个日期间的差灵

简介

dateutilpython 标准库 datetime 提供了强大的扩展

功能:

  • 相对时间,如下周一、下个月、明年
  • 两个日期间的差
  • 灵活日期解析。使用iCalendar规范的超集,支持 RFC 字符串解析
  • 几乎所有字符串格式的日期解析
  • 实现各种各样格式文件
  • 最新世界时区信息
  • 计算任何给定年份的复活节星期日日期
  • 全面的测试套件

安装

pip install Python-dateutil

初试

from dateutil.parser import parse
from dateutil.easter import easter
from dateutil.rrule import rrule, YEARLY, FR
from dateutil.relativedelta import relativedelta

now = parse('May 20 13:14:00 UTC 2020')  # UTC为世界统一时间
today = now.date()  # 转换为日期
year = rrule(YEARLY, dtstart=now, bymonth=8, bymonthday=13, byweekday=FR)[0].year
rdelta = relativedelta(easter(year), today)
print('这一天是: {}'.fORMat(today))
print('下一个8.13为周五在 {} 年'.format(year))
print('那一年的复活节离现在有多远: {}'.format(rdelta))
print('那一年的复活节日期: {}'.format(today + rdelta))
# 今天是: 2020-05-20
# 下一个8.13为周五在 2021 年
# 那一年的复活节离现在有多远: relativedelta(months=+10, days=+15)
# 那一年的复活节日期: 2021-04-04

日期比较

from dateutil.parser import parse

print(parse('2022-09-06') > parse('2022-09-05'))  # True
print(parse('2022-09-06 10:00:00') > parse('2022-09-05 00:00:00'))  # True

相对时间

使用 dateutil.relativedelta 类初始化设置的参数,并进行 + 操作

相对时间:years, months, days 等,带 s 结尾

绝对时间:year, month, day 等

import calendar
from datetime import date, datetime
from dateutil.relativedelta import *

NOW = datetime.now()
TODAY = date.today()
print('现在时间', NOW)
print('今天日期', TODAY)

print('下个月', NOW + relativedelta(months=+1))  # 注意参数有s
print('下个月再加一周', NOW + relativedelta(months=+1, weeks=+1))
print('下个月再加一周的早上10点', TODAY + relativedelta(months=+1, weeks=+1, hour=10))  # 注意用的是日期,且hour没s

print('一年前一个月', NOW + relativedelta(years=+1, months=-1))

print('下周五', TODAY + relativedelta(weekday=FR))
print('下周五', TODAY + relativedelta(weekday=calendar.FRIDAY))
print('下周三', TODAY + relativedelta(weekday=WE(+1)))  # 如果今天为周三则返回今天
print('下周三', TODAY + relativedelta(days=+1, weekday=WE(+1)))  # 即使今天周三也返回下周三

print('这个月最后的周五', TODAY + relativedelta(day=31, weekday=FR(-1)))

print('距离下个世纪还有', relativedelta(datetime(2100, 1, 1), TODAY))  # 作差

print('2020年母亲节', datetime(2020, 5, 1) + relativedelta(weekday=SU(+2)))  # 公历5月第2个周日是母亲节
print('XerCis几岁了', relativedelta(NOW, datetime(1997, 6, 19, 12, 0)))

print('今年第260天的日期', date(2020, 1, 1) + relativedelta(yearday=260))

处理不同天数的月份永远不会跨越月的边界,年同理

from datetime import date
from dateutil.relativedelta import relativedelta

# 处理不同天数的月份永远不会跨越月的边界
print(date(2003, 1, 27) + relativedelta(months=+1))  # 2003-02-27
print(date(2003, 1, 31) + relativedelta(months=+1))  # 2003-02-28
print(date(2003, 1, 31) + relativedelta(months=+2))  # 2003-03-31

# 年同理
print(date(2000, 2, 28) + relativedelta(years=+1))  # 2001-02-28
print(date(2000, 2, 29) + relativedelta(years=+1))  # 2001-02-28

解析日期时间

from dateutil import parser

d = parser.isoparse('2021-06-10T15:10:30+08:00')
print(type(d))
print(d)
# <class 'datetime.datetime'>
# 2021-06-10 15:10:30+08:00

更多例子

参考文献

dateutil Documentation

datetime Documentation

到此这篇关于Python日期时间处理库dateutil的文章就介绍到这了,更多相关Python时间处理库dateutil内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python日期时间处理库dateutil详解

本文链接: https://www.lsjlt.com/news/120300.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python日期时间处理库dateutil详解
    目录简介安装初试日期比较相对时间参考文献简介 dateutil 为 Python 标准库 datetime 提供了强大的扩展 功能: 相对时间,如下周一、下个月、明年两个日期间的差灵...
    99+
    2022-11-11
  • 详解python日期时间处理
    目录开发中常用的日期操作有哪些?我们看看这两个模块。time 内置模块calender 内置模块日期格式化处理总结讲了很多数据容器操作,这篇我们看看时间的处理。 开发中常用的日期操作...
    99+
    2022-11-12
  • 详解python日期时间处理2
    目录开发中常用的日期操作还有哪些?我们看看这两个模块。时间处理中的类型转换:struct_time vs str时间与字符串转换总结前篇我们稍微学习了Python中时间的获取,这次继...
    99+
    2022-11-12
  • Python中的日期时间处理详解
    Python中关于时间、日期的处理库有三个:time、datetime和Calendar,其中datetime又有datetime.date、datetime.time、datetime.datetime三...
    99+
    2022-06-04
    详解 日期 时间
  • moment.js 时间日期处理详解
    周一 至 周日 时间格式化转化 (Y --- 年     M --- 月   D--- 天) var timeNow...
    99+
    2022-11-12
  • Python 日期时间处理
    开发过程中最常用的时间处理就是获取时间戳,获取当前日期,或者时间戳,日期互转,做个总结,免得总找不着。1、获取当前timestamp>>> from time import time >>> time()...
    99+
    2023-01-31
    日期 时间 Python
  • 怎么进行python日期时间处理
    这篇文章给大家介绍怎么进行python日期时间处理,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。开发中常用的日期操作还有哪些?时区转换显示日期格式化秒数 与 日期 与 字符串的转换我们经常会用到,比如全球化的业务根据不...
    99+
    2023-06-22
  • python如何对日期时间进行处理
    这篇文章给大家分享的是有关python如何对日期时间进行处理的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。开发中常用的日期操作有哪些?获取当前时间获取系统秒数(从纪元时间开始)日期跟秒数之间转换获取日历等日期格式...
    99+
    2023-06-22
  • Ruby日期时间的比较,日期转换等时间日期处理方法大全
    Ruby中Date、Time、 DateTime这3个类提供 了和日期时间相关的操作。 Date只能处理日期Time能处理日期和时间DateTime也能处理日期和时间 其中,Date...
    99+
    2022-11-13
  • Java中的日期时间类详解
    目录 前言 一、Date类 1. 基本概念 2. 常见方法 2.1 日期比较 2.2 使用 SimpleDateFormat 格式化日期 二、DateFormat类 1. 基本概念 2. 常见方法 2.1 构造方法 ...
    99+
    2023-10-21
    java idea 经验分享 开发语言 数据结构
  • PHP日期时间函数date() 详解
    **date()函数是我们在php开发中常碰到并且会使用到的一个日期函数,下面我来给大家介绍date()函数的一些基本扮靓和方法,有需要了解的朋友可进入参考. 日期时间函数是PHP 的核心组成部分。无...
    99+
    2023-09-11
    php 开发语言
  • vue日期时间工具类详解
    最近做的一个项目对日期时间的处理比较多,最后整理到一个工具类里面,方便以后使用: 1. 在utils文件夹下新建一个dateTimeUtil.js文件: // 获取当前时间并格式化 ...
    99+
    2022-11-13
  • Python时间与日期库有哪些
    本篇内容主要讲解“Python时间与日期库有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python时间与日期库有哪些”吧!1、ArrowArrow 是一个专门处理时间和日期的轻量级 Py...
    99+
    2023-06-17
  • Python时间和日期库的实现
    在 Python 中是没有原生数据类型支持时间的,日期与时间的操作需要借助三个模块,分别是 time、datetime、calendar。 time 模块可以操作 C 语言库中...
    99+
    2022-11-11
  • Python处理日期和时间的方法总结
    目录1 简单入门1.1 获取当前时间1.2 获取当前日期1.3 datetime中的类2 datetime中的常用的类2.1  date类2.2 time类 2....
    99+
    2022-11-13
  • SpringBoot深入分析讲解日期时间处理
    目录GET请求及POST表单日期时间字符串格式转换使用自定义参数转换器(Converter)使用Spring注解使用ControllerAdvice配合initBinderJSON入...
    99+
    2022-11-13
  • Spring Boot日期时间如何处理
    本文小编为大家详细介绍“Spring Boot日期时间如何处理”,内容详细,步骤清晰,细节处理妥当,希望这篇“Spring Boot日期时间如何处理”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧...
    99+
    2023-06-30
  • Java日期时间类及计算详解
    目录1. Java中与日期相关的类1.1 java.util包① Date类② Calendar 日历类roll设置Calendar的容错性set1.2 java.time包① Lo...
    99+
    2022-11-13
  • PostgreSQL中的日期/时间函数详解
    目录零、前言一、获取当前时间二、时间的加减三、格式化函数3.1时间转字符串3.2字符串转日期3.3字符串转时间3.4Unix时间戳转时间四、一些重要函数4.1时间间隔4.2时间截取五...
    99+
    2022-11-12
  • Python中time库的使用(日期时间)
    time库是python中处理时间的标准库。 计算机时间的表达:time()、ctime()、gmtime(); 提供获取系统时间并格式化输出功能: strftime()、strpt...
    99+
    2023-02-02
    Python time库使用 Python time库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作