Python比較2個(gè)時(shí)間大小的實(shí)現(xiàn)方法
Python中有time和datetime,不過二者都直接取出日期和時(shí)間。 當(dāng)需要比較2個(gè)時(shí)間的先后時(shí),這兩個(gè)類的函數(shù)都顯得有些過于復(fù)雜。因?yàn)樗鼈兌紟狭巳掌凇?/p>
如果僅想比較時(shí)間,取出當(dāng)前時(shí)間會(huì)帶有日期信息,而指定比較的目標(biāo)時(shí)間時(shí)還要給日期部分賦值。那個(gè)time_struct,一大堆的參數(shù)。賦值感覺很麻煩哦。
不用什么函數(shù),直接將當(dāng)前時(shí)間格式化成字符串然后轉(zhuǎn)換成整數(shù)進(jìn)行比較。 如下表示當(dāng)前時(shí)間在09:35:10與15:01:01之間。
150101 > int(time.strftime("%H%M%S")) > 93510
簡(jiǎn)單的比較函數(shù)
此處用time寫了一個(gè)簡(jiǎn)易比較方法。思路是將時(shí)間部分格式化成字符串,然后轉(zhuǎn)成數(shù)字,直接相減來判斷先后。
def time_cmp(first_time, second_time):
print(first_time)
print(second_time)
return int(time.strftime("%H%M%S", first_time)) - int(time.strftime("%H%M%S", second_time))
測(cè)試結(jié)果
測(cè)試與輸出如下:
print(time_cmp(time.gmtime(), time.strptime("09:35:10", "%H:%M:%S")))
time.struct_time(tm_year=2017, tm_mon=3, tm_mday=9, tm_hour=15, tm_min=13, tm_sec=44, tm_wday=3, tm_yday=68, tm_isdst=0) time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=35, tm_sec=10, tm_wday=0, tm_yday=1, tm_isdst=-1) 57834
tips
可見這個(gè)函數(shù)是可以達(dá)到比較時(shí)間先后的目的的。從打印的時(shí)間信息可以看出來,未賦值的日期部分是元年日期,所以不太嚴(yán)謹(jǐn)。
以上這篇Python比較2個(gè)時(shí)間大小的實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python操作日期和時(shí)間的方法
- Python時(shí)間戳與時(shí)間字符串互相轉(zhuǎn)換實(shí)例代碼
- python利用datetime模塊計(jì)算時(shí)間差
- 10種檢測(cè)Python程序運(yùn)行時(shí)間、CPU和內(nèi)存占用的方法
- python中日期和時(shí)間格式化輸出的方法小結(jié)
- Python中實(shí)現(xiàn)對(duì)Timestamp和Datetime及UTC時(shí)間之間的轉(zhuǎn)換
- Python中datetime常用時(shí)間處理方法
- python中關(guān)于時(shí)間和日期函數(shù)的常用計(jì)算總結(jié)(time和datatime)
- python簡(jiǎn)單實(shí)現(xiàn)獲取當(dāng)前時(shí)間
- Python之日期與時(shí)間處理模塊(date和datetime)
- Python日期時(shí)間模塊datetime詳解與Python 日期時(shí)間的比較,計(jì)算實(shí)例代碼
- Python獲取當(dāng)前時(shí)間的方法
- python封裝對(duì)象實(shí)現(xiàn)時(shí)間效果
- python獲取當(dāng)前時(shí)間對(duì)應(yīng)unix時(shí)間戳的方法
- python獲得文件創(chuàng)建時(shí)間和修改時(shí)間的方法
- Python3時(shí)間轉(zhuǎn)換之時(shí)間戳轉(zhuǎn)換為指定格式的日期方法詳解
相關(guān)文章
如何在Python函數(shù)執(zhí)行前后增加額外的行為
有的時(shí)候會(huì)需要在函數(shù)前后添點(diǎn)額外的功能(比如過濾、計(jì)時(shí)等)時(shí),以前總是首先想到裝飾器。最近學(xué)習(xí)了Python的上下文管理器,所以本文就給大家介紹了如何在Python函數(shù)執(zhí)行前后增加額外的行為,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-10-10
pytest實(shí)戰(zhàn)技巧之參數(shù)化基本用法和多種方式
本文介紹了pytest參數(shù)化的基本用法和多種方式,幫助讀者更好地使用這個(gè)功能,同時(shí),還介紹了一些高級(jí)技巧,如動(dòng)態(tài)生成參數(shù)名稱、參數(shù)化的組合和動(dòng)態(tài)生成參數(shù)化裝飾器,幫助讀者更靈活地使用參數(shù)化,感興趣的朋友參考下吧2023-12-12
LyScript實(shí)現(xiàn)繞過反調(diào)試保護(hù)的示例詳解
LyScript插件中內(nèi)置的方法可實(shí)現(xiàn)各類反調(diào)試以及屏蔽特定API函數(shù)的功能,這類功能在應(yīng)對(duì)病毒等惡意程序時(shí)非常有效。本文為大家提供了LyScript實(shí)現(xiàn)繞過反調(diào)試保護(hù)的示例代碼,感興趣的可以了解一下2022-08-08
機(jī)器學(xué)習(xí)之?dāng)?shù)據(jù)清洗及六種缺值處理方式小結(jié)
本文主要介紹了機(jī)器學(xué)習(xí)之?dāng)?shù)據(jù)清洗及六種缺值處理方式小結(jié),包括刪除空行、填充平均值、中位數(shù)、眾數(shù)、線性插值和隨機(jī)森林填充,具有一定的參考價(jià)值,感興趣的可以了解一下2025-03-03
Python實(shí)現(xiàn)單例模式的五種寫法總結(jié)
單例模式(Singleton Pattern) 是一種常用的軟件設(shè)計(jì)模式,該模式的主要目的是確保某一個(gè)類只有一個(gè)實(shí)例存在。本文為大家整理了五種Python實(shí)現(xiàn)單例模式的寫法,需要的可以參考一下2022-08-08
Github?Copilot的申請(qǐng)以及在Pycharm的配置與使用詳解
GitHub在聯(lián)合OpenAI推出了一款"GitHub Copilot"工具,可以根據(jù)上下文自動(dòng)寫代碼,下面這篇文章主要給大家介紹了關(guān)于Github?Copilot的申請(qǐng)以及在Pycharm的配置與使用的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04
Python時(shí)間序列數(shù)據(jù)的預(yù)處理方法總結(jié)
這篇文章主要介紹了Python時(shí)間序列數(shù)據(jù)的預(yù)處理方法總結(jié),時(shí)間序列數(shù)據(jù)隨處可見,要進(jìn)行時(shí)間序列分析,我們必須先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理。時(shí)間序列預(yù)處理技術(shù)對(duì)數(shù)據(jù)建模的準(zhǔn)確性有重大影響2022-07-07

