萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> python計算時間差的方法

python計算時間差的方法

   本文實例講述了python計算時間差的方法。分享給大家供大家參考。具體分析如下:

  1、問題:

  給定你兩個日期,如何計算這兩個日期之間間隔幾天,幾個星期,幾個月,幾年?

  2、解決方法:

  標准模塊datetime和第三方包dateutil(特別是dateutil的rrule.count方法)能非常簡單迅速的幫你解決這個問題。

  ?

1 2 3 4 5 from dateutil import rrule import datetime def weeks_between(start_date, end_date): weeks = rrule.rrule(rrule.WEEKLY, dtstart=start_date, until=end_date) return weeks.count( )

  rrule方法允許你根據日期(DAILY),星期(WEEKLY),年(YEARLY)來設置尺度計算。下面用一段代碼來測試一下:

  ?

1 2 3 4 5 6 if _ _name_ _=='_ _main_ _': starts = [datetime.date(2005, 01, 04), datetime.date(2005, 01, 03)] end = datetime.date(2005, 01, 10) for s in starts: days = rrule.rrule(rrule.DAILY, dtstart=s, until=end).count( ) print "%d days shows as %d weeks "% (days, weeks_between(s, end))

  將輸出這樣的結果:

  7 days shows as 1 weeks

  8 days shows as 2 weeks

  Rrule計算是以整數計算的,它不會返回0.5星期之類的結果,所以8天會被算為兩個星期。

  當然你可以不必定義一個尺寸,直接一句return rrule.rrule(rrule.WEEKLY, dtstart=start_date, until=end_date).count( )就可以得到結果。

  希望本文所述對大家的Python程序設計有所幫助。

copyright © 萬盛學電腦網 all rights reserved