Python 判斷日期大小( 判斷開始時間是否早於結束時間)


在一個表單中 遇到需要判斷填入的開始時間不能早於結束時間

自己想到一個笨辦法. 用 " 結束時間 - 開始時間 " 如果減后得到的結果 小於或者等於 0

顯然是錯的 因為兩個datetime對象 相減后 得到的是一個timedelta對象 , 而timedelta對象當然是不能與 int 對象來比較大小的

於是查了下文檔 發現timedelta對象的值是有取值范圍的

Attribute Value
days Between -999999999 and 999999999 inclusive
seconds Between 0 and 86399 inclusive
microseconds Between 0 and 999999 inclusive

只有timedelta.days可以為負值, 也就是說當兩個datetime對象相減時 只有days可能變為負 因此可以比較days來判定日期是否符合要求

於是就想當然的寫了

if time_delta.days <= 0:

   ...

這么寫也是錯的....

再后來寫成了

if time_delta.days <0 or begin_time == end_time:

    ...

越來越糾結了...

 

回來后想想 應該有更好的辦法.

仔細看了下datetime模塊的文檔

發現原來datetime對象是可以直接比較大小的...

ok...那就是說...我前面真的是太糾結了...

好吧 其實可以直接這么干

if begin_time >= end_time:

   ...

 

problem solved :)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM