看Python time時間模塊用法吧,具體的步驟細節如下文介紹。
Python提供time時間模塊需要單獨引入
#推遲調用線程的運行,secs指秒數。
time.sleep(secs)
時間戳
時間戳都以自從1970年1月1日午夜經過了多長時間來表示,時間間隔是以秒為單位的浮點小數。
import time # 引入time模塊
print U"當前時間戳:",time.time()
輸出結果:
當前時間戳: 1471487935.02
當前時間
time.localtime() 函數 用一個元組裝起來的9組數字處理時間:
9組數據分別是:tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst
import time
print time.localtime(time.time())
print time.localtime()
輸出結果:
time.struct_time(tm_year=2016, tm_mon=8, tm_mday=18, tm_hour=14, tm_min=16, tm_sec=16, tm_wday=3, tm_yday=231, tm_isdst=0)
time.struct_time(tm_year=2016, tm_mon=8, tm_mday=18, tm_hour=14, tm_min=16, tm_sec=16, tm_wday=3, tm_yday=231, tm_isdst=0)
格式化時間
獲取可讀的時間模式的函數是asctime()
print time.asctime( time.localtime() )
輸出結果:
Thu Aug 18 14:04:03 2016
按需求格式化
import time
print time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
print time.strftime("%Y%m%d",time.localtime())
# 將格式字符串轉換為時間戳
a = "Thu Aug 18 14:07:27 2016"
print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
輸出結果:
2016-08-18 14:08:13
Thu Aug 18 14:08:13 2016
20160818
1471500447.0
時間,日期,時間戳之間轉換
1.將字符串的時間轉換為時間戳
方法:
a = "2013-10-10 23:40:00"
將其轉換為時間數組
import time
timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
轉換為時間戳:
timeStamp = int(time.mktime(timeArray))
timeStamp == 1381419600
2.字符串格式更改
如a = "2013-10-10 23:40:00",想改為 a = "2013/10/10 23:40:00"
方法:先轉換為時間數組,然后轉換為其他格式
timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S")
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
3.時間戳轉換為指定格式日期:
方法一:
利用localtime()轉換為時間數組,然后格式化為需要的格式,如
timeStamp = 1381419600
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
otherStyletime == "2013-10-10 23:40:00"
方法二:
import datetime
timeStamp = 1381419600
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
otherStyletime == "2013-10-10 23:40:00"
4.獲取當前時間並轉換為指定日期格式
方法一:
import time
獲得當前時間時間戳
now = int(time.time()) ->這是時間戳
轉換為其他日期格式,如:"%Y-%m-%d %H:%M:%S"
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
方法二:
import datetime
獲得當前時間
now = datetime.datetime.now() ->這是時間數組格式
轉換為指定的格式:
otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")
5.獲得三天前的時間
方法:
import time
import datetime
先獲得時間數組格式的日期
threeDayAgo = (datetime.datetime.now() - datetime.timedelta(days = 3))
轉換為時間戳:
timeStamp = int(time.mktime(threeDayAgo.timetuple()))
轉換為其他字符串格式:
otherStyleTime = threeDayAgo.strftime("%Y-%m-%d %H:%M:%S")
注:timedelta()的參數有:days,hours,seconds,microseconds
6.給定時間戳,計算該時間的幾天前時間:
timeStamp = 1381419600
先轉換為datetime
import datetime
import time
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
threeDayAgo = dateArray - datetime.timedelta(days = 3)
參考5,可以轉換為其他的任意格式了
python中時間日期格式化符號:
%y 兩位數的年份表示(00-99)
%Y 四位數的年份表示(000-9999)
%m 月份(01-12)
%d 月內中的一天(0-31)
%H 24小時制小時數(0-23)
%I 12小時制小時數(01-12)
%M 分鍾數(00=59)
%S 秒(00-59)
%a 本地簡化星期名稱
%A 本地完整星期名稱
%b 本地簡化的月份名稱
%B 本地完整的月份名稱
%c 本地相應的日期表示和時間表示
%j 年內的一天(001-366)
%p 本地A.M.或P.M.的等價符
%U 一年中的星期數(00-53)星期天為星期的開始
%w 星期(0-6),星期天為星期的開始
%W 一年中的星期數(00-53)星期一為星期的開始
%x 本地相應的日期表示
%X 本地相應的時間表示
%Z 當前時區的名稱
%% %號本身