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

python內(nèi)置模塊datetime.timedelta計算時間間隔示例代碼

 更新時間:2025年04月14日 09:46:28   作者:科雷learning  
Python的datetime模塊提供了處理日期和時間的功能,包括datetime.date、datetime.time、datetime.datetime、datetime.timedelta等類,timedelta用于表示時間間隔,支持日期和時間的加減運算,文中給出了詳細的代碼示例,需要的朋友可以參考下

Python的datetime模塊是一個強大的日期和時間處理庫,它提供了多個類來處理日期和時間。主要包括幾個功能類datetime.date、datetime.time、datetime.datetime、datetime.timedelta,datetime.timezone等。

使用datetime模塊

要使用 datetime模塊,直接導入它即可。

import datetime 或者 from datetime import time,datetime,date,timedelta

timedelta類

datetime.timedelta用于表示兩個日期或時間之間的差異(即時間間隔)。它通常用于日期的算術運算,比如計算一個日期加上或減去一定的時間間隔后的新日期。

timedelta 對象初始化參數(shù)包含天(day)、秒(second)、微秒(microsecond)、毫秒(milliseconds、分鐘(minutes)、小時(hours)、星期(weeks)時間單位,但是上述參數(shù)初始化時星期會轉化為天數(shù),分鐘和小時會轉為秒數(shù),毫秒會轉為微秒,如下紅框所示:

該類初始化后,可直接調(diào)用如下的屬性函數(shù)獲得對應的參數(shù)值

舉例:timedelta類按照如下參數(shù)初始化
timedelta_ins= timedelta(days=10, seconds=30,microseconds=1000,
                         milliseconds=1,minutes=1, hours=1,weeks=1)
print(timedelta_ins.days)
print(timedelta_ins.seconds)
print(timedelta_ins.microseconds)

執(zhí)行結果:

17

3690

2000

根據(jù)上述紅框中的計算公式驗算如下:

days = 10 + 1*7 = 17

seconds= 30 + 1*60 +1*60 = 3690

microseconds = 1000 + 1*1000 = 2000

1 timedelta配合datetime.date進行日期的加減運算

在datetime.date(只涉及年,月,日)日期基礎上計算n天前或者n天后對應的日期。

舉例:

  • 計算當前日期在1個星期后對應的日期
date_ins = date.today()
print(date_ins + timedelta(weeks=1))
結果:2024-09-21
  • 計算某個日期在50天后對應的日期
date_ins = datetime.date(2024,9,1)
print(date_ins + datetime.timedelta(days=50))
結果:2024-10-21
  • 計算某個日期在50天前對應的日期
date_ins = datetime.date(2024,9,1)
print(date_ins + datetime.timedelta(days=-50))
結果:2024-07-13
  • 計算某個日期在7個星期后對應的日期
date_ins = date(2024,9,1)
print(date_ins + timedelta(weeks=7))
結果:2024-10-20
  • 計算某個日期在435個小時后對應的日期
date_ins = date(2024,9,1)
print(date_ins + timedelta(hours=435))
結果:2024-09-19

2 timedelta配合datetime.daterime進行日期的加減運算

在datetime.datetime(涉及年,月,日,小時,分鐘,秒,微秒)時間基礎上計算某個時間后對應的時間。

舉例:

  • 計算當前時間在50天后對應的時間
date_ins = datetime.today()
print(date_ins + timedelta(days=50))
結果:2024-11-03 10:11:02.663574
  • 計算某個時間在50天2小時后對應的時間
from datetime import datetime,timedelta
date_ins = datetime(2024,month=9,day=5,hour=21,minute=34,
                    second=25,microsecond=10000)
print(date_ins + timedelta(days=50,hours=2))
結果:2024-10-25 23:34:25
  • 計算某個時間在50天前對應的時間再加上2小時20分
from datetime import datetime,timedelta
date_ins = datetime(2024,month=9,day=5,hour=21,minute=34,
                    second=25,microsecond=10000)
print(date_ins + timedelta(days=-50,hours=2,minutes=20))
結果:2024-07-17 23:54:25
  • 計算某個時間加上1小時10秒1萬微秒后對應的時間
from datetime import datetime,timedelta
date_ins = datetime(2024,month=9,day=5,hour=21,minute=34,
                    second=25,microsecond=10000)
print(date_ins + timedelta(hours=1,seconds=10,microseconds=10000))
結果:2024-09-05 22:34:35.020000

datetime.datetime和 datetime.timedelta配合使用后,有很多種時間計算方式,此處不再一一列舉。

3 timedelta類計算時間之差

不用配合detetime。datetime和 datetime.date類,timedelta類本身也可以計算兩個時間的間隔

舉例:實例化兩個類對象,timedelta_ins1 時間大于timedelta_ins2

timedelta_ins1 = timedelta(hours=1,seconds=20,microseconds=10000,weeks=2)
timedelta_ins2 = timedelta(days=6,hours=23,seconds=10,microseconds=10000)
print(timedelta_ins1 - timedelta_ins2)

結果:7 days, 2:00:10

4 total_seconds()

該函數(shù)返回timedelta類初始化對象對應的秒數(shù)。計算公式如下:

舉例:

timedelta_ins = timedelta(hours=1,seconds=10,microseconds=10000)
print(timedelta_ins.total_seconds())

結果:3610.01

5 比較時間大小

正因為timedelta類有__eq__,__lt__等魔法方法,所以具備大小比較的功能。

測試代碼:實例化兩個類對象,timedelta_ins1 時間大于timedelta_ins2

timedelta_ins1 = timedelta(hours=1,seconds=10,microseconds=10000,weeks=1)
timedelta_ins2 = timedelta(days=6,hours=23,seconds=10,microseconds=10000)
print(timedelta_ins1 < timedelta_ins2)

比較結果:False

總結

到此這篇關于python內(nèi)置模塊datetime.timedelta計算時間間隔的文章就介紹到這了,更多相關python datetime.timedelta計算時間間隔內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python常見的錯誤以及其解決方案

    Python常見的錯誤以及其解決方案

    這篇文章主要給大家介紹了關于Python常見的錯誤以及其解決方案的相關資料,學習python任重而道遠,對于初學者來說,最難受的就是報錯,本文總結了一些常見錯誤,需要的朋友可以參考下
    2023-08-08
  • Python一行代碼實現(xiàn)快速排序的方法

    Python一行代碼實現(xiàn)快速排序的方法

    排序算法是在高考或中考中出現(xiàn)頻率最多的點,所以大家要掌握,今天小編給大家?guī)砹送ㄟ^Python一行代碼實現(xiàn)快速排序的方法,感興趣的朋友跟隨小編一起看看吧
    2019-04-04
  • 解決安裝pycharm后不能執(zhí)行python腳本的問題

    解決安裝pycharm后不能執(zhí)行python腳本的問題

    今天小編就為大家分享一篇解決安裝pycharm后不能執(zhí)行python腳本的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python代碼如何實現(xiàn)余弦相似性計算

    python代碼如何實現(xiàn)余弦相似性計算

    這篇文章主要介紹了python代碼如何實現(xiàn)余弦相似性計算,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • Python異步編程入門教程指南

    Python異步編程入門教程指南

    Python作為一門流行的編程語言,提供了強大的異步編程支持,本文將深入探討Python異步編程的基礎概念、常用庫以及實際應用,通過豐富的示例代碼,助你更全面地理解和應用異步編程
    2024-01-01
  • python基于TCP實現(xiàn)的文件下載器功能案例

    python基于TCP實現(xiàn)的文件下載器功能案例

    這篇文章主要介紹了python基于TCP實現(xiàn)的文件下載器功能,結合具體實例形式分析了Python使用socket模塊實現(xiàn)的tcp協(xié)議下載功能客戶端與服務器端相關操作技巧,需要的朋友可以參考下
    2019-12-12
  • python跨文件使用全局變量的實現(xiàn)

    python跨文件使用全局變量的實現(xiàn)

    這篇文章主要介紹了python跨文件使用全局變量的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • 在Django中預防CSRF攻擊的操作

    在Django中預防CSRF攻擊的操作

    這篇文章主要介紹了在Django中預防CSRF攻擊的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Pytorch統(tǒng)計參數(shù)網(wǎng)絡參數(shù)數(shù)量方式

    Pytorch統(tǒng)計參數(shù)網(wǎng)絡參數(shù)數(shù)量方式

    這篇文章主要介紹了Pytorch統(tǒng)計參數(shù)網(wǎng)絡參數(shù)數(shù)量方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python文本終端GUI框架的使用方法

    Python文本終端GUI框架的使用方法

    Python中有幾個流行的文本終端GUI框架,它們提供了創(chuàng)建命令行界面的便捷方法,這些框架使開發(fā)者能夠構建交互式、用戶友好的命令行應用程序,本文將介紹幾個主要的Python文本終端GUI框架,展示它們的使用方法和示例代碼,需要的朋友可以參考下
    2023-12-12

最新評論