本文和大家分享的主要是python中日期加減操作相關(guān)內(nèi)容,一起來看看吧,希望對大家學習python有所幫助。 1. 日期輸出格式化 所有日期、時間的api都在datetime模塊內(nèi)。 1. datetime => string now = datetime.datetime.now() now.strftime('%Y-%m-%d %H:%M:%S')#輸出2012-03-05 16:26:23.870105 strftime是datetime類的實例方法。 2. string => datetime t_str = '2012-03-05 16:26:23'd = datetime.datetime.strptime(t_str, '%Y-%m-%d %H:%M:%S') strptime是datetime類的靜態(tài)方法。 2. 日期比較操作 在datetime模塊中有timedelta類,這個類的對象用于表示一個時間間隔,比如兩個日期或者時間的差別。 構(gòu)造方法: datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0) 所有的參數(shù)都有默認值0,這些參數(shù)可以是int或float,正的或負的。 可以通過timedelta.days、tiemdelta.seconds等獲取相應(yīng)的時間值。 timedelta類的實例,支持加、減、乘、除等操作,所得的結(jié)果也是timedelta類的實例。比如: year = timedelta(days=365)ten_years = year *10nine_years = ten_years - year 同時,date、time和datetime類也支持與timedelta的加、減運算。 datetime1 = datetime2 +/- timedeltatimedelta = datetime1 - datetime2 這樣,可以很方便的實現(xiàn)一些功能。 1. 兩個日期相差多少天。 d1 = datetime.datetime.strptime('2012-03-05 17:41:20', '%Y-%m-%d %H:%M:%S') d2 = datetime.datetime.strptime('2012-03-02 17:41:20', '%Y-%m-%d %H:%M:%S') delta = d1 - d2print delta.days 輸出:3 2. 今天的n天后的日期。 now = datetime.datetime.now() delta = datetime.timedelta(days=3) n_days = now + delta print n_days.strftime('%Y-%m-%d %H:%M:%S') 輸出:2012-03-08 17:44:50 #coding=utf-8import datetime now=datetime.datetime.now()print now#將日期轉(zhuǎn)化為字符串 datetime => stringprint now.strftime('%Y-%m-%d %H:%M:%S') t_str = '2012-03-05 16:26:23'#將字符串轉(zhuǎn)換為日期 string => datetime d=datetime.datetime.strptime(t_str,'%Y-%m-%d %H:%M:%S')print d #在datetime模塊中有timedelta類,這個類的對象用于表示一個時間間隔,比如兩個日#期或者時間的差別。 #計算兩個日期的間隔 d1 = datetime.datetime.strptime('2012-03-05 17:41:20', '%Y-%m-%d %H:%M:%S') d2 = datetime.datetime.strptime('2012-03-02 17:41:20', '%Y-%m-%d %H:%M:%S') delta = d1 - d2print delta.daysprint delta #今天的n天后的日期。 now=datetime.datetime.now() delta=datetime.timedelta(days=3) n_days=now+deltaprint n_days.strftime('%Y-%m-%d %H:%M:%S') 來源:BlogJava |