當前位置:首頁 » 編程語言 » python日期比較

python日期比較

發布時間: 2023-01-26 08:25:12

python怎樣比較兩個字元串時間

舉例,一個時間偏移後的比較情況:

1 #-*-coding=utf-8-*-
2 __author__='zhongtang'
3
4 '''
5 時間戳與字元串的互相轉換
6 '''
7
8 import time
9
10 localtime1=time.localtime()
11 time.sleep(5)
12 localtime2=time.localtime(time.time())
13
14 print type(localtime1),localtime1
15 print type(localtime2),localtime2
16
17 gmtime=time.gmtime(time.time())
18 print type(gmtime),gmtime
19
20
21 strtime1='20160518010101'
22 strtime2='20160518020101'
23
24 #字元串變成時間數據結構
25 localtime1=time.strptime(strtime1,'%Y%m%d%H%M%S')
26 localtime2=time.strptime(strtime2,'%Y%m%d%H%M%S')
27
28 print type(localtime1),localtime1
29 print type(localtime2),localtime2
30
31
32 #從時間數據結構轉換成時間戳
33 time1= time.mktime(localtime1)
34 time2= time.mktime(localtime2)
35
36 print type(time1),time1
37 print type(time2),time2
38
39 #時間戳可以直接相減,得到以秒為單位的差額
40 print time2-time1

 

 

輸出結果

1 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=9, tm_min=9, tm_sec=30, tm_wday=3, tm_yday=140, tm_isdst=0)
2 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=9, tm_min=9, tm_sec=35, tm_wday=3, tm_yday=140, tm_isdst=0)
3 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=1, tm_min=9, tm_sec=35, tm_wday=3, tm_yday=140, tm_isdst=0)
4 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=18, tm_hour=1, tm_min=1, tm_sec=1, tm_wday=2, tm_yday=139, tm_isdst=-1)
5 <type 'time.struct_time'> time.struct_time(tm_year=2016, tm_mon=5, tm_mday=18, tm_hour=2, tm_min=1, tm_sec=1, tm_wday=2, tm_yday=139, tm_isdst=-1)
6 <type 'float'> 1463504461.0
7 <type 'float'> 1463508061.0
8 3600.0

⑵ python日期獲取秒數

1、使用new Date()獲取當前日期,new Date().getTime()獲取當前毫秒數

2、計算公式,等於獲取的當前日期減去或者加上一天的毫秒數。一天的毫秒數的計算公式:24小時*60分鍾*60秒*1000毫秒,也是86400000毫秒。

舉例:

Date curDate = new Date();

var preDate = new Date(curDate.getTime() - 24*60*60*1000); //前一天

var nextDate = new Date(curDate.getTime() + 24*60*60*1000); //後一天

以下圖片使用後台輸出表示。

(2)python日期比較擴展閱讀

var myDate = new Date();

myDate.getYear(); //獲取當前年份(2位)

myDate.getFullYear(); //獲取完整的年份(4位,1970-????)

myDate.getMonth(); //獲取當前月份(0-11,0代表1月)

myDate.getDate(); //獲取當前日(1-31)

myDate.getDay(); //獲取當前星期X(0-6,0代表星期天)

myDate.getTime(); //獲取當前時間(從1970.1.1開始的毫秒數)

myDate.getHours(); //獲取當前小時數(0-23)

myDate.getMinutes(); //獲取當前分鍾數(0-59)

myDate.getSeconds(); //獲取當前秒數(0-59)

myDate.getMilliseconds(); //獲取當前毫秒數(0-999)

myDate.toLocaleDateString(); //獲取當前日期

var mytime=myDate.toLocaleTimeString(); //獲取當前時間

myDate.toLocaleString( ); //獲取日期與時間

Date.prototype.isLeapYear 判斷閏年

Date.prototype.Format 日期格式化

Date.prototype.DateAdd 日期計算

Date.prototype.DateDiff 比較日期差

Date.prototype.toString 日期轉字元串

Date.prototype.toArray 日期分割為數組

Date.prototype.DatePart 取日期的部分信息

Date.prototype.MaxDayOfDate 取日期所在月的最大天數

Date.prototype.WeekNumOfYear 判斷日期所在年的第幾周

StringToDate 字元串轉日期型

IsValidDate 驗證日期有效性

CheckDateTime 完整日期時間檢查

daysBetween 日期天數差

⑶ python3 環境,如何計算時間的比較和加減

顯示5分鍾前的時間

print(datetime.datetime.now()-datetime.timedelta(seconds=5*60))

構造時間並顯示時間差

d=datetime.datetime.now()
d=d.replace(hour=9,minute=30,second=0)
print((datetime.datetime.now()-d))

⑷ python timestamp 判斷日期是不是同一天

timestamp
時間戳類型:自1970年1月1日(00:00:00 GMT)以來的秒數
----------------------------------------------
>>> time.time()
1355749338.05917
可以嘗試轉化為str格式看日期欄位是否一致
timestamp = time.time()
time_tuple = time.localtime(timestamp)
time_str = time.strftime("%Y-%m-%d", time_tuple)
比較time_str就可以了

⑸ python日期加減比較問題請教

#time模塊實現,也是自帶的
#字元串不好計算~但是時間戳是固定的呀...
#計算結果中,假定今天24日,輸入24,輸出0天,輸入25,輸出-1天
importtime


deff(tm):
stamp=time.mktime(time.strptime(tm,"%Y%m%d"))
diff=int((time.time()-stamp)//86400)
ifdiff<=180:
return{tm:str(diff)}
else:
d={}
whilediff>180:
d[tm]=180
stamp+=180*86400
diff=int((time.time()-stamp)//86400)
#注意這里time.gmtime()返回的是0時區日期,需要處理時區問題
tm=time.strftime("%Y%m%d",time.gmtime(stamp-time.timezone))
else:
d[tm]=str(diff)
returnd

if__name__=='__main__':
tm='20160325'
print(f(tm))
tm='20171015'
print(f(tm))
#結果輸出,注意:字典是沒有固定順序的
'''
{'20160921':180,'20170320':180,'20170916':'38','20160325':180}
{'20171015':'9'}
'''

⑹ python 的時間怎麼對比

在Python編程中,使用datetime模塊計算兩個時間的差:

1
2
3
4
5
6
7
8

>>> import datetime
>>> d1=datetime.datetime(2015,7,5)
>>> d2=datetime.datetime(2005,7,4)
>>>(d1-d2).seconds
//結果86400s
# 計算兩個時間的間隔天數
# 注意:輸入月份和天時,不能輸入08,09等,會被識別為 8 進制而出錯!(8進制是不超過07的)
# 解決辦法:要把月份和天前面的0去掉。

⑺ 如何在python中比較微秒時間差

python中的最小時間單位是毫秒,沒辦法精確到微秒
用time包的time()函數可以獲得當前計算機的掛鍾時間,利用它可以獲得時間差
import time
time1 = time.time()
#要度量時間的程序
time2 = time.time()
print time2 - time1

⑻ python兩個日期差了多少天

import datetime#首行輸入,導入模塊
date1=datetime.date(year,month,day)#這裡面year,month,day是代表年,月,日,年必須寫成2021這種格式,都必須寫成數字
date2=datetime.date(year,month,day)#同上,這個是第二個日期(後面的),上面的是第一個日期(前面的)
delta=date2-date1#這是兩個日期相減,是一個時間差對象
diffdays=delta.total_seconds()//86400#差的秒數除以86400即可
print(diffdays)#列印差的天數

⑼ python 怎麼判斷一個時間是否過期

任何資料庫本身都有自己的日期/時間函數,做日期比較,最好使用資料庫函數比較。

這是因為,運行python的主機和資料庫主機可能是不同的,系統時間也不一定同步。


不過,若是非要用python來實現,可以這樣做:

#!/usr/bin/envpython
#-*-coding:utf-8-*-

importtime

defnow():
returntime.strftime('%Y-%m-%d%H:%M:%S',time.localtime(time.time()))

s='2015-10-2600:00:00'
ifnow()>s:
print'過期'

⑽ Python中處理時間的幾種方法小結

python中的時間模塊主要有time, datetime。

I, time模塊
time模塊中包含了四種時間格式:
float格式,即給定時間相對於epoch增加的秒數
tuple格式,一個九元組 (tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst)
string格式,'Mon Feb 6 15:00:06 2012'
format格式,以指定的格式生成的時間
針對這幾種時間格式,time模塊提供了函數在格式之間相互轉換。
asctime(tuple) ->string
ctime(float) ->string
gmtime(float) ->tuple
localtime(float) ->tuple
mktime(tuple) ->float
strftime(format, tuple) ->format string
strptime(formatstring, format) ->tuple
time() -> float
上述函數中,除了time()函數直接返回當前時間相對於epoch的秒數外,其他函數都要求有時間的輸入,如果沒有輸入,則默認使用當前時間。
另外,strftime和strptime中的format使用下面的格式:
%a 英文星期簡寫
%A 英文星期的完全
%b 英文月份的簡寫
%B 英文月份的完全
%c 顯示本地日期時間
%d 日期,取1-31
%H 小時, 0-23
%I 小時, 0-12
%m 月, 01 -12
%M 分鍾,1-59
%j 年中當天的天數
%w 顯示今天是星期幾
%W 第幾周
%x 當天日期
%X 本地的當天時間
%y 年份 00-99間
%Y 年份的完整拼寫
%S 秒(00-59)

除了上述的時間轉換函數之外,模塊還提供了下面的函數:
clock() 返回進程的創建時間,以秒計數的float
sleep(float) sleep一段時間,以秒計數
tzset() 更改時區

II, datetime
datetime模塊定義了下面這幾個類:
datetime.date:表示日期的類。常用的屬性有year, month, day;datetime.time:表示時間的類。常用的屬性有hour, minute, second, microsecond;datetime.datetime:表示日期時間。datetime.timedelta:表示時間間隔,即兩個時間點之間的長度。datetime.tzinfo:與時區有關的相關信息。(這里不詳細充分討論該類,感興趣的童鞋可以參考python手冊)
注 :上面這些類型的對象都是不可變(immutable)的。
下面詳細介紹這些類的使用方式。
date類
date類表示一個日期。日期由年、月、日組成(地球人都知道~~)。date類的構造函數如下:
class datetime.date(year, month, day):參數的意義就不多作解釋了,只是有幾點要注意一下:
year的范圍是[MINYEAR, MAXYEAR],即[1, 9999];month的范圍是[1, 12]。(月份是從1開始的,不是從0開始的~_~);day的最大值根據給定的year, month參數來決定。例如閏年2月份有29天;
date類定義了一些常用的類方法與類屬性,方便我們操作:
date.max、date.min:date對象所能表示的最大、最小日期;date.resolution:date對象表示日期的最小單位。這里是天。date.today():返回一個表示當前本地日期的date對象;date.fromtimestamp(timestamp):根據給定的時間戮,返回一個date對象;datetime.fromordinal(ordinal):將Gregorian日歷時間轉換為date對象;(Gregorian Calendar :一種日歷表示方法,類似於我國的農歷,西方國家使用比較多,此處不詳細展開討論。)

熱點內容
sqlupdate數據 發布:2023-02-06 19:55:58 瀏覽:716
android項目手工編譯 發布:2023-02-06 19:51:46 瀏覽:898
手機怎麼看是什麼編譯器 發布:2023-02-06 19:48:33 瀏覽:612
oracle存儲過程continue 發布:2023-02-06 19:46:12 瀏覽:56
精通腳本黑客光碟 發布:2023-02-06 19:43:37 瀏覽:725
db2創建資料庫表 發布:2023-02-06 19:41:27 瀏覽:852
linux訪問samba 發布:2023-02-06 19:33:08 瀏覽:254
cf三頭龍腳本 發布:2023-02-06 19:29:07 瀏覽:756
linux改語言 發布:2023-02-06 19:21:29 瀏覽:620
韓服fifaol3資料庫 發布:2023-02-06 19:19:22 瀏覽:682