欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python日期時(shí)間處理庫(kù)dateutil詳解

 更新時(shí)間:2022年09月06日 15:17:45   作者:XerCis  
dateutil 為 Python 標(biāo)準(zhǔn)庫(kù) datetime 提供了強(qiáng)大的擴(kuò)展,這篇文章主要介紹了Python日期時(shí)間處理庫(kù)dateutil,需要的朋友可以參考下

簡(jiǎn)介

dateutil 為 Python 標(biāo)準(zhǔn)庫(kù) datetime 提供了強(qiáng)大的擴(kuò)展

功能:

  • 相對(duì)時(shí)間,如下周一、下個(gè)月、明年
  • 兩個(gè)日期間的差
  • 靈活日期解析。使用iCalendar規(guī)范的超集,支持 RFC 字符串解析
  • 幾乎所有字符串格式的日期解析
  • 實(shí)現(xiàn)各種各樣格式文件
  • 最新世界時(shí)區(qū)信息
  • 計(jì)算任何給定年份的復(fù)活節(jié)星期日日期
  • 全面的測(cè)試套件

安裝

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為世界統(tǒng)一時(shí)間
today = now.date()  # 轉(zhuǎn)換為日期
year = rrule(YEARLY, dtstart=now, bymonth=8, bymonthday=13, byweekday=FR)[0].year
rdelta = relativedelta(easter(year), today)
print('這一天是: {}'.format(today))
print('下一個(gè)8.13為周五在 {} 年'.format(year))
print('那一年的復(fù)活節(jié)離現(xiàn)在有多遠(yuǎn): {}'.format(rdelta))
print('那一年的復(fù)活節(jié)日期: {}'.format(today + rdelta))
# 今天是: 2020-05-20
# 下一個(gè)8.13為周五在 2021 年
# 那一年的復(fù)活節(jié)離現(xiàn)在有多遠(yuǎn): relativedelta(months=+10, days=+15)
# 那一年的復(fù)活節(jié)日期: 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

相對(duì)時(shí)間

使用 dateutil.relativedelta 類(lèi)初始化設(shè)置的參數(shù),并進(jìn)行 + 操作

相對(duì)時(shí)間:years, months, days 等,帶 s 結(jié)尾

絕對(duì)時(shí)間:year, month, day 等

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

NOW = datetime.now()
TODAY = date.today()
print('現(xiàn)在時(shí)間', NOW)
print('今天日期', TODAY)

print('下個(gè)月', NOW + relativedelta(months=+1))  # 注意參數(shù)有s
print('下個(gè)月再加一周', NOW + relativedelta(months=+1, weeks=+1))
print('下個(gè)月再加一周的早上10點(diǎn)', TODAY + relativedelta(months=+1, weeks=+1, hour=10))  # 注意用的是日期,且hour沒(méi)s

print('一年前一個(gè)月', 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('這個(gè)月最后的周五', TODAY + relativedelta(day=31, weekday=FR(-1)))

print('距離下個(gè)世紀(jì)還有', relativedelta(datetime(2100, 1, 1), TODAY))  # 作差

print('2020年母親節(jié)', datetime(2020, 5, 1) + relativedelta(weekday=SU(+2)))  # 公歷5月第2個(gè)周日是母親節(jié)
print('XerCis幾歲了', relativedelta(NOW, datetime(1997, 6, 19, 12, 0)))

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

處理不同天數(shù)的月份永遠(yuǎn)不會(huì)跨越月的邊界,年同理

from datetime import date
from dateutil.relativedelta import relativedelta

# 處理不同天數(shù)的月份永遠(yuǎn)不會(huì)跨越月的邊界
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

解析日期時(shí)間

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

更多例子

參考文獻(xiàn)

dateutil Documentation

datetime Documentation

到此這篇關(guān)于Python日期時(shí)間處理庫(kù)dateutil的文章就介紹到這了,更多相關(guān)Python時(shí)間處理庫(kù)dateutil內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python?變量類(lèi)型實(shí)例詳解

    Python?變量類(lèi)型實(shí)例詳解

    這篇文章主要介紹了Python?變量類(lèi)型實(shí)例詳解,基于變量的數(shù)據(jù)類(lèi)型,解釋器會(huì)分配指定內(nèi)存,并決定什么數(shù)據(jù)可以被存儲(chǔ)在內(nèi)存中,接下來(lái)更多詳細(xì)內(nèi)容需要的小伙伴可以參考下面文章,希望對(duì)你有所幫助
    2022-02-02
  • python實(shí)現(xiàn)json文件的增刪改操作方法

    python實(shí)現(xiàn)json文件的增刪改操作方法

    這篇文章主要介紹了python實(shí)現(xiàn)json文件的增刪改操作,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • 批標(biāo)準(zhǔn)化層 tf.keras.layers.Batchnormalization()解析

    批標(biāo)準(zhǔn)化層 tf.keras.layers.Batchnormalization()解析

    這篇文章主要介紹了批標(biāo)準(zhǔn)化層 tf.keras.layers.Batchnormalization(),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python人臉檢測(cè)實(shí)戰(zhàn)之疲勞檢測(cè)

    Python人臉檢測(cè)實(shí)戰(zhàn)之疲勞檢測(cè)

    本文主要介紹了實(shí)現(xiàn)疲勞檢測(cè):如果眼睛已經(jīng)閉上了一段時(shí)間,我們會(huì)認(rèn)為他們開(kāi)始打瞌睡并發(fā)出警報(bào)來(lái)喚醒他們并引起他們的注意。感興趣的朋友可以了解一下
    2021-12-12
  • 常見(jiàn)的python正則用法實(shí)例講解

    常見(jiàn)的python正則用法實(shí)例講解

    這篇文章為大家詳細(xì)主要介紹了常見(jiàn)的python正則用法實(shí)例,列舉Python正則表達(dá)式的幾種匹配用法,感興趣的小伙伴們可以參考一下
    2016-06-06
  • Python語(yǔ)言編寫(xiě)電腦時(shí)間自動(dòng)同步小工具

    Python語(yǔ)言編寫(xiě)電腦時(shí)間自動(dòng)同步小工具

    家里有臺(tái)很多年前買(mǎi)的電腦,CMOS電池殘廢了,經(jīng)常遇到開(kāi)機(jī)后系統(tǒng)時(shí)間被重置的情況,老媽向我反映用起來(lái)很不方便。于是身為一個(gè)程序員的我想到寫(xiě)個(gè)小工具來(lái)幫老媽排憂解難
    2013-03-03
  • 最小二乘法及其python實(shí)現(xiàn)詳解

    最小二乘法及其python實(shí)現(xiàn)詳解

    今天小編就為大家分享一篇最小二乘法及其python實(shí)現(xiàn)詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • Python File(文件) 方法整理

    Python File(文件) 方法整理

    在本篇文章中我們給大家整理了關(guān)于Python File(文件) 的用法以及相關(guān)知識(shí)點(diǎn),有興趣的朋友們學(xué)習(xí)下。
    2019-02-02
  • wtfPython—Python中一組有趣微妙的代碼【收藏】

    wtfPython—Python中一組有趣微妙的代碼【收藏】

    Wtfpython講解了大量的Python編譯器的內(nèi)容。這篇文章主要介紹了wtfPython-Python中一些奇妙的代碼,感興趣的朋友跟隨腳本之家小編一起看看吧
    2018-08-08
  • Django 多語(yǔ)言教程的實(shí)現(xiàn)(i18n)

    Django 多語(yǔ)言教程的實(shí)現(xiàn)(i18n)

    這篇文章主要介紹了Django 多語(yǔ)言教程的實(shí)現(xiàn)(i18n),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07

最新評(píng)論